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

C++

Войти
Регистрация
Восстановить пароль
 
star-wall
0 / 0 / 0
Регистрация: 20.06.2011
Сообщений: 25
#1

Проблема с программным нажатием кнопок тулбара в новых интерфейсах - C++

24.02.2012, 06:32. Просмотров 1061. Ответов 4
Метки нет (Все метки)

Есть задача:
Нажать программно кнопку в интерфейсе чужой программы находящейся на тулбаре. Желательно это реализовать через SendMessage/PostMessage, а не через события
Однако как оказалось тулбар то там не совсем обычный, так как на сообщение
C++
1
2
3
SendMessage(tbHandle, TB_BUTTONCOUNT, 0, 0);
//tbHandle хэндл нужного контрола
//TB_BUTTONCOUNT сообщение для получения кол-ва контролов на тулбаре
Приходит ответ 0, хотя на этой панели расположено 4 кнопки одна из которых раскрывающаяся.
Начал сравнивать с офисом, там всё намного хуже: весь тулбар с закладками и с кнопками быстрого доступа это один большой контрол, у которого нету дочерних...
В моём случае программа это ГРАНД-Смета v5.1. Контролы находил через spy++. Хэндл на нужный контрол получаю правильно, соотвествует с поиском через spy++. Надеюсь на помощь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2012, 06:32     Проблема с программным нажатием кнопок тулбара в новых интерфейсах
Посмотрите здесь:
C++ WinAPI Добавление в верхний статус бар новых кнопок ( помимо свернуть, развернуть, закрыть )
Создание тулбара средствами WinAPI C++ WinAPI
C++ WinAPI Как вернуть хэндл тулбара
Программирование на интерфейсах C++
Имитация нажатия кнопок клавиатуры нажатиями кнопок в окне C++ WinAPI
Архивирование программным путем C++. Чем? C++
Трудности с программным размещением компонента на странице Visual C++
Смена обоев рабочего стола программным способом C++ WinAPI
C++ WinAPI Отключение тома файловой системы USB программным способом
как узнать нажатие клавиши было программным или от пользователя C++
Записать программным путем команды в bat файл через writefile C++ WinAPI
C++ Приложение для доступа к БД программным путем без инструментов GUI

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1035 / 976 / 54
Регистрация: 28.02.2010
Сообщений: 2,826
Завершенные тесты: 2
24.02.2012, 07:19     Проблема с программным нажатием кнопок тулбара в новых интерфейсах #2
Цитата Сообщение от star-wall Посмотреть сообщение
хотя на этой панели расположено 4 кнопки одна из которых раскрывающаяся.
Являются ли эти 4 кнопки объекты класса "BUTTON"? Может быть кнопки на тулбаре сделаны как-то хитро.
star-wall
0 / 0 / 0
Регистрация: 20.06.2011
Сообщений: 25
24.02.2012, 07:46  [ТС]     Проблема с программным нажатием кнопок тулбара в новых интерфейсах #3
В том то всё и дело, что кнопки не определяются как контролы. Соответственно и не являются классом BUTTON. И контрол на котором они расположены не является родителем (т.е. нет дочерних контролов)
Миниатюры
Проблема с программным нажатием кнопок тулбара в новых интерфейсах  
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
25.02.2012, 03:29     Проблема с программным нажатием кнопок тулбара в новых интерфейсах #4
загляни сюда:
Использование кнопок на тулбаре
star-wall
0 / 0 / 0
Регистрация: 20.06.2011
Сообщений: 25
27.02.2012, 06:08  [ТС]     Проблема с программным нажатием кнопок тулбара в новых интерфейсах #5
Спасибо, решено через:
C++
1
2
                PostMessage(paste,WM_LBUTTONDOWN,MK_LBUTTON,MAKELONG(101, 36));
                PostMessage(paste,WM_LBUTTONUP,MK_LBUTTON,MAKELONG(101, 36));
Yandex
Объявления
27.02.2012, 06:08     Проблема с программным нажатием кнопок тулбара в новых интерфейсах
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru