Главная страница
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.01 c
1-9452
Андрей Сенченко
2002-03-25 13:13
2002.04.04
StringGrid ... достал уже если честно своей простотой..


1-9541
kull
2002-03-23 14:45
2002.04.04
Доставка почты...


1-9557
olookin
2002-03-24 15:21
2002.04.04
TChart иногда ведет себя странно


1-9513
Rammst
2002-03-23 06:42
2002.04.04
Скины


3-9365
amamed_3071
2002-03-09 09:40
2002.04.04
AdoQuery Time Out expected Error