Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Симуляция нажатия кнопки на DBGrid


Mmmaloy ©   (2005-12-17 22:48:00) 

Есть грид, в котором есть выподающие поля (combobox - создаются автоматоматически, т.к. поле Lookup). По нажатию на "Alt+Стрелка вниз" выподает список. Это слишком сложно для пользователя. Хотелось бы упростить. Например по нажатию на пробел. Пишу у Грида обработчкик KeyDown

if (Key=VK_SPACE) then
    begin
         SendMessage(MY_DBGrid.Handle, ???, ??? ,???)
    end;

Что там бы написать в вопросах. и если подход вообще неверный, как решить задачу?
Спасибо за ответы


Mmmaloy   (2005-12-19 18:59:00) [1]

keybd_event(VK_MENU, 0 , 0, 0);
keybd_event(VK_DOWN, 0 , 0, 0);
keybd_event(VK_DOWN, 0 , KEYEVENTF_KEYUP, 0);
keybd_event(VK_MENU, 0 , KEYEVENTF_KEYUP, 0);

Спасибо, работает!


Leonid Troyanovsky   (2005-12-19 08:58:00) [2]


> Mmmaloy   (17.12.05 23:20) [1]

> Как "Alt" задействовать?


keybd_event, SendInput,  VK_MENU.
Сначала нажимаем одну, вторую, затем отпускаем (вторую, первую).
Грид в момент нажатия  должен иметь фокус.

--
Regards, LVT.


Mmmaloy   (2005-12-17 23:20:00) [3]

Нажатие клавиши "вниз" симулирую:

SendMessage(DBGrid13.Handle, WM_KEYDOWN, VK_DOWN , 0);

Как "Alt" задействовать?


Наверх

Титульная страница Поиск, карта сайта Написать письмо