вопрос по меню

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
double
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 11.05.2004 (Вт) 10:56

вопрос по меню

Сообщение double » 11.05.2004 (Вт) 11:03

Есть некая программа в трее, у нее по правому клику вызывается popup меню. Возможно как нить програмно кликнуть на определенный пункт этого меню?
getmenu возращает 0

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.05.2004 (Вт) 11:17

Программный клик по меню - это посыл нужному окну сообщения WM_COMMAND с нужным ID в wParam.
А вдруг прога ловит не WM_COMMAND, а WM_MENUCOMMAND?
А вдруг она вообще ничего не ловит, полагаясь только на TrackPopupMenuEx? В последнем случае вообще ничего не сделаешь.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

double
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 11.05.2004 (Вт) 10:56

Сообщение double » 11.05.2004 (Вт) 11:19

GSerg писал(а):А вдруг прога ловит не WM_COMMAND, а WM_MENUCOMMAND?
А вдруг она вообще ничего не ловит, полагаясь только на TrackPopupMenuEx? В последнем случае вообще ничего не сделаешь.

как это проверить?

посылать wm_command с помощью чего?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.05.2004 (Вт) 11:24

Заюзай Spy++ из стандартной поставки Visual Studio. Посмотри им, что получает прога, когда ты вручную кликаешь меню. Так можно и узнать ID элементов заодно.
Посылается при помощи SendMessage, конечно.
Вперёд.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

double
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 11.05.2004 (Вт) 10:56

Сообщение double » 11.05.2004 (Вт) 11:39

GSerg писал(а):Заюзай Spy++ из стандартной поставки Visual Studio. Посмотри им, что получает прога, когда ты вручную кликаешь меню. Так можно и узнать ID элементов заодно.
Посылается при помощи SendMessage, конечно.
Вперёд.


wm_command там нету

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 11.05.2004 (Вт) 11:43

Там есть все. Во всяком случае, все документированное, а использование WM_COMMAND к нему относиться. А значени констант ты можешь узнать сам, для этих целей есть API Viewer, есть C-хидеры (если ты устанавливал VC).
Lasciate ogni speranza, voi ch'entrate.

double
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 11.05.2004 (Вт) 10:56

Сообщение double » 11.05.2004 (Вт) 11:47

alibek писал(а):Там есть все. Во всяком случае, все документированное, а использование WM_COMMAND к нему относиться. А значени констант ты можешь узнать сам, для этих целей есть API Viewer, есть C-хидеры (если ты устанавливал VC).


я имел ввиду что не ловится wm_command


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

    TopList