Вниз
Скачать: CL | DM;

ActiveControl - не срабатывает фокусировка в форме   Найти похожие ветки 

← →
kserg@ukr.net   (2002-03-12 12:39) [0]

В глав.форме на событие DblСlick на конкретном поле GRID-а вызывается модальная форма редактирования записи,
при этом я сразу перевожу фокус на cоот-щий нажатому полю Edit.Text.
Фокус устанавливаю перед открытием окна так:
if DBGridEh1.SelectedField.FullName="NMat" then fmEditCont.ActiveControl:= fmEditCont.NMat;

Проблема в том, что при первом вызове формы фокус упорно позиционируется на 1й EDIT, но при последующих вызовах формы
устанавливается правильно. В чём дело?

Заодно прошу объяснить, есть ли преимущества между использованием Form.ActiveControl или Edit.SetFocus
для первоначальной установки фокуса на нужный control?

Спасибо.


← →
Johnmen ©   (2002-03-12 12:56) [1]

В OnShow формы :
if DBGridEh1.SelectedField.FieldName="NMat" then
<что-то>.SetFocus;


← →
Shaman_Naydak ©   (2002-03-12 18:39) [2]

SetFocus физически передает фокус в указанный контрол.
=> Если форма невидимая или контрол невидимый, то будет ексептион.
ActiveControl же более интеллектуальная штука и не будет ругаться, это так сказать пожелание: хочу фокус на тот контрол.. Если сейчас можно то переставит, если форма невидимая, то переставит когда будут отображать, Если нельзя переставить на контрол, ничего страшного


← →
kserg@ukr.net   (2002-03-12 18:45) [3]

>Shaman_Naydak - понял.
Так в чём на твой взгляд проблема с первой фокусировкой?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
1-9501
Linux
2002-03-22 20:11
2002.04.04
Как в Delphi программно создать файл?


1-9454
Andrey007
2002-03-25 10:29
2002.04.04
Можно ли создать своё окошко для подсказки (hint) и если да, то как?


1-9534
michael_B
2002-03-23 20:47
2002.04.04
Как определить в TCheckListBox что пользователь выбрал(где поставил галочки)?


3-9366
urii
2002-03-11 18:56
2002.04.04
RXlib


1-9551
новыйенкий
2002-03-23 20:10
2002.04.04
Нужна помощь




   Наверх