TabOrder

3 отговора 84 прегледа
#1

TabOrder

Zdravejte,
Imam slednia problem.
Imam forma s 3 edit kontroli. Iskam kato natisna Enter, da premina vav wtorata, na sledwastia Enter w tretata, a ot neia w parvata (iskam da simuliram Tab).
Chetoh za TabOrder, no ne mojah da se opravia.
Moga da go postigna kato na KeyPress i Key=VK_RETURN slagam SetFocus na sledwastata kontrola i t.n., no ako ne sa 3 a 30 kontroli shte e umoritelno. Niama li drug nachin?
Blagodaria predvaritelno.

Отговор
в отговор на Beginner #2

Re: TabOrder - има...

едно събитие на формата OnKeyPress - завързваш си обработка на него - да прави SetFocus...(при натискане на Enter) и не забравяй да си сложиш KeyPreview := true за формата (за да прихваща клавишите преди контролите)

---
Е т'ва е живот!
Отговор
в отговор на Beginner #3

Re: TabOrder

На всичките edit контроли слагаш един и същ OnKeyPress handler:


procedure TForm1.CommonEditKeyPress(Sender: TObject; var Key: Char);
begin
if ( Key = #13 ) then begin
Key := #0; // за да не се чува ping :)
SelectNext( TWinControl( Sender ), True, True );
end;
end;


Да не забравиш да подредиш TabOrder-а.

---
Не е важно да си добър, важното е да си манияк!

Редактирано от ess на

Отговор
в отговор на Beginner #4

Re: TabOrder

Blagodaria vi. Strahotni ste!

Отговор