Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Вниз

Как программно вызвать переход фокуса на следущ. контрол?   Найти похожие ветки 

 
lovres   (2003-09-24 15:15) [0]

Есть куча DBEdit"ов и надо по нажатию "Enter" переходить на следующий контрол. Как это сделать?


 
Skier   (2003-09-24 15:18) [1]

TWinControl.SelectNext(...) ?


 
webpauk   (2003-09-24 15:23) [2]

procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Key=VK_Return) then Edit2.SetFocus;
end;


 
lovres   (2003-09-24 15:26) [3]

ну это понятно, но так надо для каждого контрола отдельно процедуру делать, а хотелось бы чтобы для всех была одна и осуществляла переход на след. контрол в TabControlList"е


 
Palladin   (2003-09-24 15:26) [4]


> webpauk

А ты уверен что Edit2 это следующий контрол?


 
Verg   (2003-09-24 15:27) [5]

PostMessage(Handle, WM_NEXTDLGCTL, 0, 0);


 
lovres   (2003-09-24 15:33) [6]

Спасибо, Verg! API рулит!


 
still   (2003-09-24 15:45) [7]

а
Skier © (24.09.03 15:18) [1]
чем не устраивает?


 
Palladin   (2003-09-24 15:56) [8]

потому что у Vergа уже написано, а у Skierа нужно чего то еще там дописывать, нафиг надо...


 
Verg   (2003-09-24 16:23) [9]


> потому что у Vergа уже написано, а у Skierа нужно чего то
> еще там дописывать, нафиг надо...


... и не хватало еще вспотеть при этом...


 
lovres   (2003-09-24 16:56) [10]

Правильно, а нахрена там ещё Сендера вписывать, если тут всё уже есть, да и вариант красивый.


 
Vic   (2003-09-25 14:00) [11]


procedure TFNew.FormCreate(Sender: TObject);
begin
KeyPreview:=True;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key =VK_RETURN then begin
Key := 0;
SelectNext(ActiveControl,true,true);
end;
end;


 
Настенька   (2003-09-25 14:10) [12]

Вот намного легче способ
procedure tedit1.onkeypress;
if key=#13 then edit2.setfocus;
при нажатие в едите1 энтер курсор встанет на 2 эдит


 
Palladin   (2003-09-25 14:12) [13]

легче чем что?


 
Vic   (2003-09-25 14:16) [14]

обшибся...

>>procedure TFNew.FormCreate(Sender: TObject);
>>begin
>> KeyPreview:=True;
>>end;


procedure TForm1.FormCreate(Sender: TObject);
begin
KeyPreview:=True;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key =VK_RETURN then begin
Key := 0;
SelectNext(ActiveControl,true,true);
end;
end;


 
willys   (2003-09-25 14:31) [15]

если во время ввода не надо выполнять никаких проверок на нажатие других клавиш, то очень удобно пользоваться SelectNext, только ставить его надо в обработчик TDBEdit.OnKeyDown, а не на форму. ведь на форме могут быть и другие компоненты ;).
а вообще я когда-то потратил 10 минут и вывел новые компоненты из TEdit, TDBEdit, TComboBox и т.д., отличающиеся от стандартных только поведением при нажатии Enter и свойством, разрешающим/запрещающим это дело. что и всем советую. очень удобно, и форму не загромождаешь лишними событиями.



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

Форум: "Основная";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.009 c
3-18220
Voland777
2003-09-17 11:52
2003.10.06
Вывод в программу выходного параметра хранимой проседуры


14-18642
Petro1
2003-09-17 08:34
2003.10.06
Про злобного админа


1-18419
S.A.S.
2003-09-25 14:20
2003.10.06
Копии формы


1-18295
Niobe
2003-09-24 10:27
2003.10.06
Уважаемые мастера, не подскажете как избавиться отVCL60.bpl & RTL


3-18226
Смирнов Алексей
2003-09-16 23:37
2003.10.06
Фильтрация данных по каждому полю.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский