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

Вниз

WM_KEYDOWN, WM_KEYUP   Найти похожие ветки 

 
Spawn ©   (2003-01-29 20:22) [0]

Ну ни как не могу затсавить работать(( Всякие WM_LBUTTONDOWN(UP), WM_CHAR работают нормально, но нажатие кнопок ни в какую.
Вот, например, пробую нажать кнопку в Edit:

SendMessage(Edit1.Handle,WM_KEYDOWN,Ord("f"),0);
SendMessage(Edit1.Handle,WM_KEYUP,Ord("f"),0);

и ноль результата.
Подскажите, пожалуйста, в чем моя ошибка?


 
Spawn ©   (2003-01-29 20:56) [1]

Я нашел такой вариант(он работает):
ScanCode := MapVirtualKey($56, 0);
lParam := ScanCode shl 16 or 1;
PostMessage(Edit1.Handle, WM_KEYDOWN, $56, lParam);

Пожалста поясните LParam:=ScanCode shl 16 or 1;(а именно shl)
Для чего нужен оператор shl?


 
Cobalt ©   (2003-01-29 21:33) [2]

этот оператор сдвигает ScanCode на 16 битов влево:
(например: 0000.0000.1100.1100 <-на 6 битов: 0011.0011.0000.0000)

в область битов № 16-23 "Specifies the scan code. The value depends on the original equipment manufacturer (OEM)."


 
Spawn ©   (2003-01-29 21:41) [3]

Спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
7-76698
DNT
2003-01-27 18:30
2003.03.24
Чтение S.M.A.R.T.


3-76288
Alexey Tmur
2003-03-04 11:36
2003.03.24
Не работает в ADO поддержка индексов и соответственно SЕЕК


3-76292
studentas
2003-03-04 12:43
2003.03.24
SQL?


14-76664
X-Man
2003-03-06 19:54
2003.03.24
Windows 98


8-76532
Kirill45
2002-12-13 03:17
2003.03.24
Как воспроизвести MP3