Вниз
Скачать: CL | DM;

фокус на кнопке+нажать ее Enter^ом   Найти похожие ветки 

← →
Windows1   (2005-10-06 13:48) [0]

как на апи по клавише Enter нажать на кнопку (procedure)
типа ButtonClick(self);
пока делаю в окне обработку клавиши Enter.
Работает если фокус на окне,а если на кнопке
-неработает (т.е после Setfocus(handleButton)).

А надо чтоб выделеная фокусом работала(


← →
clickmaker ©   (2005-10-06 13:55) [1]

FormKeyDown()
 if (Key = VK_RETURN) then Button.Click;
у формы KeyPreview поставь true


← →
-=S..S=-   (2005-10-06 19:04) [2]


> clickmaker ©   (06.10.05 13:55) [1]

Вроде вопрос прозвучал на апи :)


> фокус на кнопке+нажать ее Enter^ом

Ищешь нужную тебе кнопку h := FindWindowEx(FindWindow("Form", "TForm")...)
Потом делаешь SendMessage(h, (не помню точно какое там сообшение на нажатие левой кнопки мыши ) ... )
потом тоже самое токо для отпускания ...

вот и всё .. а кнопка сама фокус получит после всего этого ...
ENJOY :)


← →
Windows1   (2005-10-14 09:57) [3]

не неполучается фокус уже поставил на кнопке
(их две там),чтоб видно было какая кнопка в фокусе.
Но ведь при Enter форма уже не принимает сообщение WM_Char=enter !!!

Надо типа Button1.OnEnter=procedureClick1;


← →
ANB ©   (2005-10-14 10:55) [4]

Во первых неправильно делаешь обработку. Но в твоем случае - пошли самому окну WM_CHAR VK_ENTER


← →
ssk ©   (2005-10-15 17:32) [5]

SendMessage(Кнопка.Handle, BM_CLICK, 0, 0);


← →
wp2   (2005-10-15 22:27) [6]

Можно вообще нажать кнопку Enter
keybd_event(13, $45, KEYEVENTF_EXTENDEDKEY or 0, 0);
keybd_event(13, $45, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0)

Если я конечно не ошибся...


← →
Windows1   (2005-10-17 15:38) [7]

вот код как я делаю

function WndFunc(aWnd, Msg:......
begin
case Msg of
WM_CHAR: /// OnEnter
  Begin
  if Wparam=13 then ButtonClk;
  End;

procedure ButtonClk;
begin
......
halt;
end;

main....
Button:=CreateWindow("Button","OK"....
SetFocus(Button);  // если это убрать,то OnEnter (ButtonClk); работает

при фокусе на кнопку + нажать интер - непашет


← →
Leonid Troyanovsky ©   (2005-10-17 16:09) [8]


> Windows1   (17.10.05 15:38) [7]

> case Msg of
> WM_CHAR: /// OnEnter


WM_GETDLGCODE:

--
Regards, LVT.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
3-1130769931
Asail
2005-10-31 17:45
2005.12.18
Вопрос по работе с датой и временем в SQL-запросе.


1-1132221959
murzik
2005-11-17 13:05
2005.12.18
Общий NumberFormat в Excel-е


1-1132672356
DelphiLexx
2005-11-22 18:12
2005.12.18
Изменить высоту Canvas a


6-1126005509
Skat
2005-09-06 15:18
2005.12.18
Проблемы связи


1-1132669205
Sandman29
2005-11-22 17:20
2005.12.18
CM_Hint Show обязателен?




   Наверх