Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Доступ к ScrollBar. 
:(
    Опции темы
AndreySol
Дата 25.1.2007, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 772
Регистрация: 19.6.2004

Репутация: 1
Всего: 1



Есть диалоговое окно, у него в свойствах установлен горизонтальный скролл.
Как получить доступ к объекту ScrollBar ?
Пробовал к примеру в OnInitDialog
Код

CScrollBar* pScroll = GetScrollBarCtrl(SB_HORZ);
if(pScroll != NULL)
{

}

толку нет.
PM MAIL   Вверх
Earnest
Дата 25.1.2007, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Это не контрол, а неклиентская часть окна, как заголовок - посмотри сам Спаем. Работай через GetScrollInfo / SetScrollInfo.


--------------------
...
PM   Вверх
zkv
Дата 16.2.2007, 04:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 16
Всего: 92



В продолжение темы, вот статейка, здесь рассказывается, как заставить ScrollView использовать созданные нами скроллбары. Все замечательно работает, если приложение однодокументное. Но если все описанные в статье операции проделать для Child frame'а во многодокументном приложении, то получается совсем не то что нужно smile

В этом случае скроллбары изначально не прорисовываются вовсе, прорисовка идет только при изменении размера, но это мелочь, хуже то, что сами ползунки скроллбаров не реагируют на мышь. И судя по мерцаниям во время перерисовки, класс представления "перекрывает" их, что ли, клиентской областью (а они, насколько я понимаю должны быть в неклиентской области). Чего то я не могу понять что происходит. 

Собственно вопрос не знаю как задать, можно ли как нибудь "объяснить"  окну, где у него клиентская область, а где нет? Или посоветуйте что нить. Я что то зациклился, и не знаю уж куда копать smile

Спасибо за внимание и, надеюсь smile, помощь. 
PM MAIL   Вверх
Earnest
Дата 16.2.2007, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Цитата(zkv @  16.2.2007,  05:29 Найти цитируемый пост)
Собственно вопрос не знаю как задать, можно ли как нибудь "объяснить"  окну

Можно: обрабатывай WM_NCCALCSIZE.
По поводу твоих проблем - скорее всего, нужно поработать со стилями child-frame'ов.
Твою статью не читала, просто помню, в чем могут быть траблы при переноси SDI-кода в MDI.
Но лучшая рекомендация - покопаться в MFC-коде и посмотреть, чем SDI отличается от MDI. 



--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0408 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.