Chciałbym żeby moja aplikacja która używa memo zapisała jego zawartość do pliku gdy komputer będzie wyłączany.
Jak to zrobić? Proszę o proste wyjaśnienie gdyż jestem trochę zielony.
Chciałbym żeby moja aplikacja która używa memo zapisała jego zawartość do pliku gdy komputer będzie wyłączany.
Jak to zrobić? Proszę o proste wyjaśnienie gdyż jestem trochę zielony.
Zobacz tutaj: http://4programmers.net/Forum/Delphi_Pascal/94088-Delphi_zapis_+_zamykanie_systemu
a swój kod wstaw w wierszu 17
Memo1.Lines.SaveToFile('Plik.txt');
Czy wystarczyłoby ten kod wstawić w zdarzenie OnDestroy formy głównej?
OnDestroy może okazać się za późno, lepiej OnCloseQuery.
Hmm... Wydawało mi się, że sekwencja zakończenia życia formy jest taka:
OnCloseQuery -> OnClose -> OnDeactivate -> OnHide -> OnDestroy
Tylko czy te zdarzenia zostaną wywołane gdy system operacyjny będzie zamykany (bez ręcznego zamknięcia aplikacji).
I dokładnie tak jest.
Z tym że niektóre kontrolki zaczynają już się "pakować i zmykać" tuż po OnCloseQuery, więc w OnDestroy możesz liczyć jedynie na te dane które zapisałeś do niezależnych składowych klasy.
Przy zamykaniu komputera z dowolnego powodu na OnCloseQuery dochodzi na 100% nawet jak wciskasz guzik zasilania (na starszych komputerach nie dojdzie bo u nich przycisk zasilania jest tym samym co wyciągnięcie wtyczki) zaś reszta komunikatów już nie koniecznie.