Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Вниз

Нажатый 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]

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




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.017 c
1-9558            olookin               2002-03-24 16:47  2002.04.04  
Сеть


3-9377            JibSkeart             2002-03-08 18:25  2002.04.04  
Пернести базу MSSQL 6.5 на MSSQL 7.xx Реально ли?


1-9459            Swinger               2002-03-24 00:26  2002.04.04  
ICQ


1-9500            SergeyDon             2002-03-20 19:56  2002.04.04  
опять MDI и DLL


3-9391            DPro                  2002-03-12 19:07  2002.04.04  
Как програмно задать в свойствах IE домашнюю страницу?