![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Переход по компонентам
ЛенаК © (2002-10-16 07:22:00)На panel находятся несколько edit,label и др.компонент.
При обработке события
procedure TMain.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
case ord(key) of
44,48..57,7,127,8: ;
13: bitbtn4.setfocus; // на следующий edit
else
begin
showmessage("Неправильный символ!");
key:=chr(7);
end;
end;
мне нужно, чтобы при нажатии на Enter фокус ввода перемещался в следующий Edit, чтобы была универсальная процедура перехода.
Я пыталась проверять
for i:=1 to panel3.componentcount do
if TEdit(Panel3.components[i]) then ...
но panel3.componentcount всегда 0.
Как не делать form1.componentcount, а найти именно те edit, которые лежат на panel?
MBo (2002-10-16 08:06:00) [1]Component.components[] - компоненты, чей Owner - данный компонент, Control.Controls[] - чей Parent - данный control
ЛенаК (2002-10-16 08:03:00) [2]MBo © (16.10.02 07:49)
Спасибо, так тоже попробую. :)
А чем componentcount отличается от controlcount?
ЛенаК (2002-10-16 07:49:00) [3]gek © (16.10.02 07:44)
Да, именно так мне и надо!! :))
Спасибо, заработало!
Как, оказывается, просто. А я огород строю...
MBo (2002-10-16 07:49:00) [4]не form1.controlcount, а Panel3.ControlCount!!!
gek (2002-10-16 07:44:00) [5]Может имеется ввиду
13:SelectNext(Sender as TWinControl,true,true);
ЛенаК (2002-10-16 07:35:00) [6]for i:=1 to form1.controlcount do
if form1.Controls[i].Parent.??? а как здесь узнать, что Panel?
MBo (2002-10-16 07:24:00) [7]ControlCount и controls[i] - те контролы, чей Parent - Panel