Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 20.06.2011
Сообщений: 25

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

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

Студворк — интернет-сервис помощи студентам
Есть задача:
Нажать программно кнопку в интерфейсе чужой программы находящейся на тулбаре. Желательно это реализовать через SendMessage/PostMessage, а не через события
Однако как оказалось тулбар то там не совсем обычный, так как на сообщение
C++
1
2
3
SendMessage(tbHandle, TB_BUTTONCOUNT, 0, 0);
//tbHandle хэндл нужного контрола
//TB_BUTTONCOUNT сообщение для получения кол-ва контролов на тулбаре
Приходит ответ 0, хотя на этой панели расположено 4 кнопки одна из которых раскрывающаяся.
Начал сравнивать с офисом, там всё намного хуже: весь тулбар с закладками и с кнопками быстрого доступа это один большой контрол, у которого нету дочерних...
В моём случае программа это ГРАНД-Смета v5.1. Контролы находил через spy++. Хэндл на нужный контрол получаю правильно, соотвествует с поиском через spy++. Надеюсь на помощь.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.02.2012, 06:32
Ответы с готовыми решениями:

Закрыть div заменой свойства или программным нажатием на ссылку
Уважаемые форумчане. Пишу небольшой проектик. И тормознулся на задачке, которую никак не пойму как решить. На главной странице создаются...

Добавление кнопок программным путем.
Народ , можно ли добавлять кнопки программым путём (было две , а стало 3) ????

Подвисает при попытке свернуть свое окно программным нажатием мышью по значку свернуть
Windows.SetCursorPos(x,y); if mh.move=false then begin if mh.LBtn then begin if mh.down then begin...

4
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
24.02.2012, 07:19
Цитата Сообщение от star-wall Посмотреть сообщение
хотя на этой панели расположено 4 кнопки одна из которых раскрывающаяся.
Являются ли эти 4 кнопки объекты класса "BUTTON"? Может быть кнопки на тулбаре сделаны как-то хитро.
0
0 / 0 / 1
Регистрация: 20.06.2011
Сообщений: 25
24.02.2012, 07:46  [ТС]
В том то всё и дело, что кнопки не определяются как контролы. Соответственно и не являются классом BUTTON. И контрол на котором они расположены не является родителем (т.е. нет дочерних контролов)
Миниатюры
Проблема с программным нажатием кнопок тулбара в новых интерфейсах  
0
 Аватар для OstapBender
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
25.02.2012, 03:29
загляни сюда:
Использование кнопок на тулбаре
1
0 / 0 / 1
Регистрация: 20.06.2011
Сообщений: 25
27.02.2012, 06:08  [ТС]
Спасибо, решено через:
C++
1
2
                PostMessage(paste,WM_LBUTTONDOWN,MK_LBUTTON,MAKELONG(101, 36));
                PostMessage(paste,WM_LBUTTONUP,MK_LBUTTON,MAKELONG(101, 36));
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.02.2012, 06:08
Помогаю со студенческими работами здесь

Построить схему нажатием кнопок с лампочкой
Комитет из 7 человек принимает решения большинством голосов. Председатель пользуется правом «вето». Построить схему так, чтобы ...

Как с формы нажатием кнопок сделать сжатие..
Есть программа в А2000, с разделенной базой "Baze" и программным кодом "Prog". Можно ли с формы выполнить сжатие базы и программного...

Выбор действия из нескольких вариантов нажатием двух кнопок, case of
Есть несколько действий. Необходимо написать выбор действия посредством нажатия кнопки TButton1 и TButton2 (или TButton3) используя case of...

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

Как сделать счетчик(таймер) для счета время между нажатием двух кнопок
Нужно сделать приложение по нажатию кнопки "пуск" выводит текущее время в Label1, и при нажатии на кнопку "стоп" выводит на экран...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru