Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.02;
Скачать: CL | DM;

Вниз

Next Tab   Найти похожие ветки 

 
Михич   (2002-11-18 07:44) [0]

На форме у меня лежат куча Edit"ов. Между ними переход кнопочкой TAB, это все хорошо, а как сделать такой же переход ещё и при нажатии на Enter.
Вариант:
if ord(key)=13 then key:=chr(9);

чёй-то, не работает...


 
Дмитрий К.К. ©   (2002-11-18 07:58) [1]

Нуно менять ActiveControl


 
Михич   (2002-11-18 08:05) [2]

:-) 15 Edit"ов...
... как ты предлагаешь им воспользоваться???


 
BIN ©   (2002-11-18 08:13) [3]

procedure TfmMain.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then SelectNext(Sender As tWinControl,true,true);
end;


 
MBo ©   (2002-11-18 08:13) [4]

общий обработчик, в котором
ActiveControl:=FindNextControl(TEdit(Sender),true,true,true);


 
Михич   (2002-11-18 08:20) [5]

прыгают, между Edit"ами, спасибо, НО...
>BIN только между Edit"ами
>MBo с первого Edit"а перескакивает сразу на кнопочку в конце...

а моно сделать так, чтобы Enter на форме, работал как ТАБ?


 
MBo ©   (2002-11-18 08:24) [6]

>перескакивает сразу на кнопочку в конце
Установи TabOrder


 
Михич   (2002-11-18 08:27) [7]

TabOrder стоит нормально. При нажатии на ТАБ все прагает нормально...


 
MBo ©   (2002-11-18 08:46) [8]

у меня все нормально. Поиграй с Boolean параметрами


 
shane54 ©   (2002-11-18 10:12) [9]

Народ а почему при нажатии на Enter звуковой сигнал раздаётся????
На форме 2 EditBox"а и код, который предложил BIN © (18.11.02 08:13)

procedure TfmMain.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then SelectNext(Sender As tWinControl,true,true);
end;




 
Valeron   (2002-11-18 10:27) [10]

Привет, программеры!
Я использую этот код уже несколько лет и не жужу:

procedure TClientForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (Key = #13) then
begin
Key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;

Выставляю где надо TabStop, и задаю TabOrder так чтобы шел обход компонент как нужно.
P.S. Кто мидасом занимается?


 
Jony ©   (2002-11-18 10:29) [11]

procedure TfrmForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_RETURN then begin
Perform(WM_NEXTDLGCTL, 0, 0);
Key:=VK_TAB;
end;
end;


 
shane54 ©   (2002-11-18 10:38) [12]

Попробовал всё что было предложено - только вариант Valeron (18.11.02 10:27) не пищит...


 
Valeron   (2002-11-18 12:44) [13]

забыл!
для формы нужно сделать св-во keypreview = true.
А чтобы пищяло напиши Beep


 
Manic Mechanic ©   (2002-11-18 12:52) [14]

По-моему так, причем работают и стрелки, а Esc закрывает форму

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var CtlDir: word;
begin
if(Key in [VK_UP, VK_DOWN, VK_RETURN])then begin
if Key=VK_UP then CtlDir := 1 else CtlDir := 0;
SendMessage(Handle, WM_NEXTDLGCTL, CtlDir, 0);
Key := 0;
end else if(Key=VK_ESCAPE)then begin
Key := 0;
Close;
end;
end;


 
Дмитрий К.К. ©   (2002-11-18 17:40) [15]

Да вариантов МУЛЬОН


 
Cherruty   (2002-11-20 10:29) [16]

Молодые люди помогите разобраться, почему при подобном переходе по Editам, после изменения данных срабатывает обработка события на Ок , хотя Editы никак с этим не связаны.


 
Cherruty   (2002-11-20 10:33) [17]

Причем все равно как обрабатывать нажатие Enter, но я делаю так:

procedure TfrmBankEdit.EditKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if Key = VK_RETURN
then PostMessage(Self.Handle, WM_NEXTDLGCTL, 0, 0);
end;


 
KSergey ©   (2002-11-21 06:25) [18]

Возможно, Ок сто ит как DefaultButton - тогда она естественно срабатывает по Enter.


 
dim- ©   (2002-11-22 09:25) [19]

форма модальная, а в "ОК" ModalResult=mrOk


 
Vlad1 ©   (2002-11-22 20:42) [20]

Procedure Tform1.FormKeyPress(Sender:TObject;var Key:Char);
begin
if Key=#13 then begin
Key:=0;
perform(CM_DialogKey,VK_TAB,0);end;
end;

Обязательно Form.KeyPreview:=True;
Юзай.
Удачи!



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

Текущий архив: 2002.12.02;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.018 c
6-4537
Keplin Sergey
2002-10-04 12:05
2002.12.02
Виртуальный файл для браузера...


1-4436
Tano
2002-11-18 02:20
2002.12.02
Что такое Самоадресуемая запись?


1-4431
jen_bond
2002-11-19 22:45
2002.12.02
Изменение размера компонента


1-4451
smok_er
2002-11-19 23:10
2002.12.02
Аналог ListView


1-4414
Helloween
2002-11-22 21:45
2002.12.02
Надо добавить один файл в конец другого