Форум программистов, компьютерный форум CyberForum.ru

Странный вид PopUp Menu - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа, которая бы записывала в текстовый файл информацию о всех пакетах, проходящих через сетевую карту http://www.cyberforum.ru/cpp-beginners/thread469715.html
В упрощенном варианте требуется написать прогу, которая бы записывала в текстовый файл информацию о всех пакетах, проходящих через сетевую карту (длина пакета, адрес отправителя, адрес получателя). Эта софтина должна работать под win2000. Насколько мне известно, работать с пакетами можно, используя библиотеку packet32.dll. Но при попытке компильнуть код: char A; unsigned long B;...
C++ Как импортировать и экспортировать из dll класс? Помогите, плз. Создал dll: //... class __declspec(dllexport) a { public : a(); }; a::a() { http://www.cyberforum.ru/cpp-beginners/thread469700.html
C++ Подменить окно регистрации Win
Задача такая - сделать свое окно регистрации в Win98/2000/Xp (т.е. убрать стандартное) Имя пользователя, пароль, домен - извесны примерно так с этой задачей справляется Novell, но надо именно своя прога
Фокус клавиатурного ввода в сложных UserControl-ах, написанных на C++ для VB C++
Ситуация следующая: Есть UserControl (далее UC), писуемый на VB, на котором располагаются UC, написанный на C++. Этот сишный контрол не должен получать фокус клавиатурного ввода. Во всяком случае хочется сделать так, чтобы у VB-шных элементов управления на создаваемом UC не происходили события LostFocus при кликании на окна сишного контрола. Попытка решить проблему вызовом функции SetFocus...
C++ "Windows для профессионалов" by Jeffrey Richter http://www.cyberforum.ru/cpp-beginners/thread469661.html
Уважаемые! Нет ли у кого указанной книги в электронном виде?
C++ Как зарустить data/time из приложения? как зарустить data/time из преложения подробнее

Показать сообщение отдельно
Dima2002
0 / 0 / 0
Регистрация: 15.06.2008
Сообщений: 9
24.08.2008, 13:44     Странный вид PopUp Menu
Да нет, насчет лоха - это ты зря, наверное... Просто ты наступил на грабли, на которые все когда-то наступали.
Ответ:
1) Юзай не райтбаттонап, а WM_COMTEXTMENU - там в процедуру передаются правильные координаты точки нажатия;
2) Меню, которое ты хочешь подключить, не должно быть меню верхненго уровня - то есть ты должен создать меню первого уровня - с любым названием (я всегда именую 1), а вот уже в нем создается меню, которое будет у тебя показываться при нажатии правой клавиши (вообще-то, это очень упрощенный взгляд - пишу так чтобы тебе было понятно - просто можно в одном меню держать сколько-хочешь контекстных меню..)
3)Далее код:
C++
1
2
3
4
5
6
7
8
void C...Dlg::OnContextMenu(CWnd* pWnd, CPoint point) 
{
    CMenu menu_;
    menu_.LoadMenu(IDR_TESTMENU);
    CMenu* pSubMenu = menu_.GetSubMenu(0);    
    
    pSubMenu->TrackPopupMenu(TPM_LEFTALIGN |TPM_RIGHTBUTTON, point.x, point.y, this);
}
Если что непонятно - спрашивай.
Дмитрий.
Минск-2002.
 
Текущее время: 23:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru