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

Вниз

Нажатый Shift при клике на MenuItem   Найти похожие ветки 

 
neXt ©   (2002-03-25 12:20) [0]

Как в обработчеке события OnClick пункта всплывающего меню (TPopupMenu) узнать, нажата ли в данный момент клавиша Shift (на худой конец, Ctrl или Alt :)
В моём распоряжении, в данном случае, есть только MenuItem, поэтому отлавливать OnKeyDown и OnKeyUp для флага шифта - мне не подходит, да и не дзенский это путь.


 
Arhelon ©   (2002-03-25 12:24) [1]

Мона сделать по тупому зато наверняка описать переменную типа
ssShift потом смотреть её значение где угодно.
На форме рисуешь OnKeyDown и там прсваеваешь ей оно самое.


 
neXt ©   (2002-03-25 12:28) [2]

Форма не моя, я работаю только с Пунктом меню, на форме менять ничего не могу. Мне в функцию передают объект TPopupMenu я вкладываю туда свой пункт и навешиваю событие.


 
Alx2 ©   (2002-03-25 12:29) [3]

Вот это попробуй:
if (getKeyState(VK_LSHIFT) and (1 shl 8))<>0 then (Левый шифт нажат)


 
neXt ©   (2002-03-25 12:31) [4]

... ещё: это не одна форма, мой класс вызывают несколько парней, так что, в каждом свою ssShift заводить?


 
Юрий Зотов ©   (2002-03-25 12:32) [5]

if GetKeyState(VK_SHIFT) < 0 then ... // Нажата одна из Shift

Детали см. в описании GetKeyState


 
Alx2 ©   (2002-03-25 12:35) [6]

>Юрий Зотов © (25.03.02 12:32)
Только поправиться хотел, ан не успел!
Спасибо. :)


 
Alx2 ©   (2002-03-25 12:37) [7]

>neXt © (25.03.02 12:31)
>это не одна форма, мой класс вызывают несколько парней,
>так что, в каждом свою ssShift заводить?
см. (Юрий Зотов © (25.03.02 12:32))


 
neXt ©   (2002-03-25 12:59) [8]

Да, спасибо Вам, въехал. Всё впорядке.



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
1-9475
Dimedrol
2002-03-21 10:38
2002.04.04
Настраиваемый интерфейс


3-9385
Ольга
2002-03-12 16:49
2002.04.04
SQL


1-9445
Yuraz
2002-03-25 09:49
2002.04.04
Сортировка строк в Memo


3-9403
Wizard_Ex
2002-03-07 17:43
2002.04.04
FIBPLUS & EVENTALERTER


3-9378
sergey_2
2002-03-12 12:07
2002.04.04
DOA