Вниз
Скачать: CL | DM;

КОНТЕКСТНОЕ МЕНЮ!!!   Найти похожие ветки 

← →
Onyx   (2003-08-08 13:08) [0]

Привет мастерам! У меня следующий вопрос: Есть контекстное меню. Надо сделать так, чтобы обработчики левой и правой кнопок мыши были разными. Т.е кликаешь левую кнопку на пункте меню - исполняется какая-либо команда, кликаешь правую - на выбранном пункте меню устанавливается флажок (Checked:=true), причем при клике на правой кнопке мыши меню не должно исчезать. Вот такой вот вопрос. Кто знает, подскажите. Заранее спасибо.


← →
Игорь Шевченко ©   (2003-08-08 13:11) [1]

1) Написать свой аналог меню
2) Не мучить пользователей


← →
panov ©   (2003-08-08 13:28) [2]

А что так кричать-то...


← →
Onyx   (2003-08-08 13:34) [3]

А что разве стандартными API нельзя решить этот вопрос. Обработчик левой кнопки мыши - это я знаю. Вся загвоздка состоит в обработчике правой кнопки (сделать надо именно так, как я написал в вопросе).


← →
panov ©   (2003-08-08 13:39) [4]

Создай окно с пунктами меню. А сни ты сможешь делать все, что захочешь.


← →
Onyx   (2003-08-08 13:56) [5]

Объясни пожалуйста panov, что ты имеешь в виду под "Создай окно с пунктами меню", ты хочешь сказать чтобы я вместо контекстного меню показывал форму похожую на контекстное меню. Если я не прав, то исправь меня.


← →
Игорь Шевченко ©   (2003-08-08 13:57) [6]


> чтобы я вместо контекстного меню показывал форму похожую
> на контекстное меню


Именно


← →
Onyx   (2003-08-08 14:00) [7]

А всё-таки, как быть с контекстным меню?


← →
Игорь Шевченко ©   (2003-08-08 14:07) [8]

А никак. Пользоваться тем поведением, которое имеет контекстное меню. Нет таких API


← →
Rouse_ ©   (2003-08-08 14:14) [9]

Тут на сайте есть статья про пользовательские интерфейсы, что-то про примочки или фенечки, короче про ошибки разработчиков при создании нестандартных интерфейсов пользователя.
Занимательное, скажу, чтиво, советую...

Желаю успехов


← →
Onyx   (2003-08-08 14:30) [10]

Ну хорошо возможно таких API и нет. Тогда кто ответит на следующий вопрос я показываю контекстное меню с помощью ф-ции TrackPopupMenuEx() причем использую спец. флажок, к-й позволяет выбирать пункт меню только по нажатию левой кнопки мыши, т.о. когда я кликаю правой кнопкой по пункту меню - ничего не происходит. Но во время правого клика система по-любому посылает какое-то сообщение моей программе (какое? - не знаю). Так вот к чему это я, а к тому что в обработчике данного сообщения можно записать код, реализующий обработку правого клика мыши.


← →
Onyx   (2003-08-08 14:36) [11]

Так какое же сообщение посылает система моей программе во время правого клика?


← →
Игорь Шевченко ©   (2003-08-08 14:39) [12]

Посылает. WM_CONTEXTMENU сообщение называется


← →
Onyx   (2003-08-08 14:48) [13]

А теперь следующий вопрос: как на Delphi реализовать обработку этого сообщения? Примерчик приведите, пожалуйста. Хотя бы кратенький.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.014 c
1-40437
Charly
2003-10-02 20:26
2003.10.13
TPageControl -> AllowChange


1-40361
west
2003-10-01 16:04
2003.10.13
HelpME


14-40664
KSergey
2003-09-22 17:05
2003.10.13
Приобретение книги


3-40246
yuray76
2003-09-23 15:40
2003.10.13
BDE API


3-40292
chesh
2003-09-19 13:07
2003.10.13
Поиск с помощью Seek (AdoTable) по dbf таблице




   Наверх