![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Открытие
KingSize © (2002-01-10 17:57:00)Люди, хочу сделать следующее - есть некая форма, она лежит в свернутом виде на таскбаре Виндовс, как только на диске G: появится некий файл тест.тхт, форма должна раскрыться и показать содержимое этого файла, а потом снова уйти в "спячку" до следующего раза. Помогите сделать.
Suntechnic (2002-01-10 19:56:00) [1]Shadow © (10.01.02 18:21)
В принципе можно и так, но не совсем понятна формулировка вопрошающего "до следующего раза" Т.е. это как? До следующего изменения этого файла? До появления другого файла? и т.д.
А в твоём варианте, если таймер будет тикать достаточно часто, то после первого появления файла, задолбаешься MessageBox-сы закрывать. Ну во время отображения ты то его конечно убрал, но что будет потом? Файл надо либо удалять после этого, либо вести список уже появившихся(если файлы появляются каждый раз с новым именен), а лучше всего использовать вместо таймера FindFirstChangeNotification, FindNextChangeNotification и т.д. ф-ци...
Shadow (2002-01-10 18:21:00) [2]Ну...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
RichEdit: TRichEdit;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if FileExists("G:\test.txt") then
begin
Timer1.Enabled := False;
Application.Restore;
RichEdit.Lines.LoadFromFile("G:\test.txt");
ShowMessage(RichEdit.Lines.Text);
Application.Minimize;
Timer1.Enabled := True;
end;
end;
end.