![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как открыть форму? [D6, D7]
novice © (2006-06-01 13:21:00)begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
If ParamCount = 0 Then
Application.Run
Else
begin
For i := 1 To ParamCount do
begin
Key := LowerCase(ParamStr(i));
If Key = '/auto' Then
begin
Вот к этому моменту хотелось бы иметь уже открытую форму
Form1.Button1.Enabled := False;
Form1.Button1Click(Application);
Application.Run;
А не в этот момент
end
Else
begin
ShowMessage('Ключи запуска приложения:' + chr(13)
+ '/auto - автозапуск;' + chr(13) + '/help - эта справка;'
+ chr(13) + 'без ключа - обычный запуск.');
Application.Terminate;
end
end;
end;
end.
novice (2006-06-01 16:27:00) [1]Все оказалось намного проще:
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Form1.Show;
Form1.Refresh;
For i := 1 To ParamCount do
begin
Key := LowerCase(ParamStr(i));
If Key = '/auto' Then
begin
Form1.Button1.Enabled := False;
Form1.Button1Click(Form1);
end
Else
begin
ShowMessage('Ключи запуска приложения:' + chr(13) + '/auto - автозапуск;' + chr(13) + '/help - эта справка;' + chr(13) + 'без ключа - обычный запуск.');
Application.Terminate;
end
end;
Application.Run;
end.
novice (2006-06-01 15:27:00) [2]Мдя... Чего-то я совсем далек от мысли: как обрабатываются события? Процедура Form1.OnCreate не создается, в инспектора, в соответствующее поле свою процедуру не вставлю. Просветите по IDE.
unknown (2006-06-01 13:38:00) [3]
> novice (01.06.06 13:34) [3]
> Я может и не прав, но ведь пока OnCreate не завершится,
> то и формы как-бы еще не существует?
Существует. OnCreate вызывается в AfterConstruction :
procedure TCustomForm.AfterConstruction;
begin
if not OldCreateOrder then DoCreate;
т. е. тогда, когда форма уже создана.
novice (2006-06-01 13:35:00) [4]Блин, чушь сморозил. Мне про ивана, а я про FormCreate.
novice (2006-06-01 13:34:00) [5]Я может и не прав, но ведь пока OnCreate не завершится, то и формы как-бы еще не существует?
novice (2006-06-01 13:27:00) [6]А зачем (я этот кусок оттуда, вобщем-то, и перенес)?
unknown (2006-06-01 13:23:00) [7]
> novice (01.06.06 13:21)
Вот это : > If ParamCount = 0 Then...надо оформить в Form1.OnCreate