Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > Узнать ориентацию BCGPControlBar


Автор: dizzy1984 18.6.2009, 09:49
Есть окно с классом "BCGPControlBar". Его можно крепить к 4-м сторонам родительского окна. Можно ли как-то узнать находится ли оно в горизонтальном или вертикальном положении?
Возможно мне будет полезна информация о возможности узнать ориентацию окошка mfc класса CToolBar, которую я также не могу найти.
При этом само окошко создает чужое приложение, то есть доступа к объекту у меня нет.

Автор: Earnest 18.6.2009, 14:59
Если не ошибаюсь, единственная возможность (как и MFC), получить докбар и по его идентификатору определить, какая это сторона... В чужом приложении фокус не пройдет - это не на сообщениях реализовано.
С другой стороны, всегда можно развести геморрой с позицией главного окна и бара...

Автор: dizzy1984 19.6.2009, 09:26
И еще вопрос. Под спаем я вижу окошко с типом "ParamControlBar", которое содержит потомка типа "Button". В интерфейсе программы при клике на эту кнопку появляется таблица, расположенная чуть ниже. При повторном клике таблица убирается. Можно ли как-то узнать нажата кнопка или нет. Я не понял каким классам в bcgcontrolbar соответствуют эти 2 контрола.
Этот вопрос чисто из интереса - когда кнопка нажата у нее всегда появляется следующее окно, другое дело что решение через сообщение было бы более устойчиво.

Автор: Earnest 19.6.2009, 20:22
Не знаю, о каком окошке идет речь, но узнать, нажата ли кнопка, можно, проверив ее GetCheck.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)