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

Вниз

навигация по ENTER   Найти похожие ветки 

 
Sliften ©   (2003-06-10 09:13) [0]

На форме 2 Edit(а) как прописать так чтобы по ENTER переводился фокус между ними? Или придется для каждого Edit(а) писать свою команду типа
if key = VK_RETURN theh
Edit2.SetFocus
а потом так же для второго


 
Соловьев ©   (2003-06-10 09:44) [1]

fMain.KeyPreview = true
....

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


 
kudatsky   (2003-06-10 10:03) [2]

А чам тебе не нравится твой собственный вариант ?
По моему, там всё в порядке. И проще не сделпешь.


 
kp   (2003-06-10 10:37) [3]

Простой вопрос А куда это прицепить


 
Sliften ©   (2003-06-10 10:38) [4]


> kudatsky (10.06.03 10:03)
> А чам тебе не нравится твой собственный вариант ?
> По моему, там всё в порядке. И проще не сделпешь.

да оното проще если на форме не более 5 Edit(ов)
а если штук 20. Да и развиваться не помишает


 
kp   (2003-06-10 10:39) [5]

Извините Понятно


 
Lu Chan ©   (2003-06-10 18:13) [6]

Если не устраевает чем-то вариант от Соловьева. То могу предложить еще два извращения ;-):
>>fMain.KeyPreview = true
>>....
>>procedure TfMain.FormKeyPress(Sender: TObject; var Key: Char);
>>begin
Внутри работать с массивом Controls[i] главной формы и проверять на соответствие TEdit и передавать фокус. Или же создать свой массив TEdit и одну функцию обработки Enter"a для передачи фокуса следующему члену масива.



 
Kosha   (2003-06-10 18:25) [7]

procedure TForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_Return then
begin
Key:=0;
SelectNext(ActiveControl,True,True);
end;
end;


 
Sliften ©   (2003-06-11 00:50) [8]

Соловьев © (10.06.03 09:44)

fMain.KeyPreview = true
....

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


Спасибо! Только не подскажеш Perform(чего); чтобы двигаться в обратном порядке (назат). И не ругайтесь пожалуста процедура мне еще пока не знакома. Да а есле будет время не поделетесть



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

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

Наверх




Память: 0.48 MB
Время: 0.045 c
1-84078
Volly
2003-06-10 11:24
2003.06.26
Memo > 64kb


3-83901
YZ
2003-06-02 20:11
2003.06.26
Регистрация БД в ODBC


3-84043
Z_man7777
2003-06-02 06:25
2003.06.26
Вопрос по полю типа Float в InterBase6.x


8-84442
reticon
2003-03-08 13:52
2003.06.26
формат файла


3-84037
olevar_y
2003-06-02 05:54
2003.06.26
Как встроить Case_Insensetive в SQL запрос Like