![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
при выполнении приложения выскакивает ошибка [D6]
vit74 © (2005-10-26 10:26:00)При попытки выполнить программу выскакивает такая ошибка
project project1.exe raised exception class EInvalid Operation with
message 'Connot focus a disabled or invisible window'
Progress stopped. Use step or Run to continue.
Код такой
var
Form1: TForm1;
c: String;
r: String;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:='';
Edit2.Text:='';
Edit1.SetFocus;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
c:='Привет';
Edit1.text:= c;
Edit2.SetFocus;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
r:='Хорошо';
Edit2.text:= r;
Edit1.Text:='';
Edit1.SetFocus;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;
Может кто подскажет причину этой ошибки
Заранее благодарен
Ega23 (2005-10-26 13:31:00) [1]А вообще нехило TabOrder выставлять правильный. Тогда и проблем таких не будет...
Amoeba (2005-10-26 10:51:00) [2]Просто сразу установи нужные значения свойства ActiveControl в DesignTime, и тогда не понадобится это делать в RunTime.
Edit1.Text:='';
Edit2.Text:='';
Это также лишнее. Задавать нужно еще при проектировании формы.
vit74 (2005-10-26 10:47:00) [3]BiN © (26.10.05 10:29) [1]
> procedure TForm1.FormCreate(Sender: TObject);
> begin
> Edit1.Text:='';
> Edit2.Text:='';
> Edit1.SetFocus; перенеси в OnShow
> end;
Спасибо помогло!
Leonid Troyanovsky (2005-10-26 10:41:00) [4]
> vit74 © (26.10.05 10:26)
> message 'Connot focus a disabled or invisible window'
> Progress stopped. Use step or Run to continue.
> Может кто подскажет причину этой ошибки
Невозможно установить фокус невидимому окну.
Т.е., в OnCreate окно невидимо. Пользуй ActiveControl := Edit1.
Или SetFocusedControl.
--
Regards, LVT.
BiN (2005-10-26 10:29:00) [5]
> procedure TForm1.FormCreate(Sender: TObject);
> begin
> Edit1.Text:='';
> Edit2.Text:='';
> Edit1.SetFocus;перенеси в OnShow
> end;