| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как перескакивать с одного Edit в другой по клику? |
| Автор: Аркадий 22.11.2002, 06:43 |
| Как перескакивать с одного Edit в другой по клику клавиши (стрелки вниз), которая находится под клавишей End ? Что в это процедуре написать ? procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin ВОТ ЗДЕСЬ чтобы курсор был на втором Edite ? end; всего 6 Edit-ов : Edit1,Edit2,Edit3,Edit4,Edit5,Edit6 Чтобы сделать такой цикл Edit1 --> Edit2--> Edit3 --> Edit4 --> Edit5 -->Edit6 --> Edit1 |
| Автор: Vit 22.11.2002, 06:46 | ||
Примерно так:
Не забудь поставить это событие на все Edit |
| Автор: Аркадий 22.11.2002, 07:18 |
| Что то не получилось procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var i:integer; begin if (Sender is TEdit) and (Key=vk_Down) then begin i:=strtoint(copy((Sender as TEdit).name,5,1)); if i=6 then i:=1 else inc(i); (FindComponent('Edit'+inttostr(i)) as TEdit).setfocus; end; end; ПОТОМ procedure TForm1.Edit2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var i:integer; begin if (Sender is TEdit) and (Key=vk_Down) then begin i:=strtoint(copy((Sender as TEdit).name,5,1)); if i=6 then i:=1 else inc(i); (FindComponent('Edit'+inttostr(i)) as TEdit).setfocus; end; end; и так до procedure TForm1.Edit6KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); и никакого результата !!!! |
| Автор: Medved 22.11.2002, 07:28 |
| Вот не поленился, попробывал, все работает! Что то ты значит неправильно делаешь? /А ты вообще в Дельфи работаешь? :-)/ Может ты в свойствах компонентов не привязал процедуры к визуальным компонентам? (двойной щелчок по свойству OnKeyDown на вкладке Events в Object Inspector, на каждом из шести Edit`ов) |
| Автор: Vit 22.11.2002, 07:37 |
| 1) Ставишь свои грешные 6 Edit на форму, смотри не переименовывай их. 2) Нажимаешь Shift, не отпуская его выделяешь все 6 Edit 3) Переходишь на Object Inspector и делаешь двойной щелчёк на событии OnKeyDown 4) В открывшемся коде меняешь процедуру на мою - она будет работать для всех Edit одновременно, нечего плодить код... |
| Автор: Аркадий 22.11.2002, 08:00 |
| Примного благодарен |
| Автор: Vit 22.11.2002, 08:05 | ||
А теперь попытайся понять что именно делает этот код - вынесешь много интересного. Не стесняйся спрашивать... |