Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как в Visual C++ на форме сделать широкие полосы прокрутки?  (Прочитано 11057 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Anonymous
Гость
« : 07-09-2004 12:49 » 

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

ru
Offline Offline

« Ответ #1 : 07-09-2004 22:06 » 

если скроллинг является окном, то его можно сделать owner draw
а вообще есть даже такая статья
http://www.codeproject.com/miscctrl/resizescrollbar.asp
Записан
Тот же гость
Гость
« Ответ #2 : 10-09-2004 07:37 » 

Нда.
С английским у меня порядок, но как присобачить это к стандартным скроллам самого окна - непонятно.

К примеру, есть добавочная прокрутка:
CScrollBar   m_wndSBVert;
CRect rect(10,10,100,100);
m_wndSBVert.Create(WS_VISIBLE|WS_CHILD|SBS_VERT, rect, this, 0);
И будет она широкой.

Но где создаются прокрутки самой формы и как их перекрыть?
Или как хотя-бы менять ширину m_wndSBVert в процессе работы?
Записан
USBLexus
Опытный

ru
Offline Offline
Пол: Мужской
Кот рыжий


« Ответ #3 : 10-09-2004 08:02 » 

Цитата: Тот же гость
Или как хотя-бы менять ширину m_wndSBVert в процессе работы?

m_wndSBVert .SetWindowPos(....)
Записан

#define QUESTION(b) (2*b)||(!(2*b)) (c) William Shakespeare
USBLexus
Опытный

ru
Offline Offline
Пол: Мужской
Кот рыжий


« Ответ #4 : 10-09-2004 08:05 » 

Цитата: Тот же гость
Но где создаются прокрутки самой формы и как их перекрыть?


А что за форма? В смысле перекрыть
Обычно создаются в OnCreate
Незнаю если я тебя правильно понял то убери стили WS_HSCROLL и WS_VSCROLL
Записан

#define QUESTION(b) (2*b)||(!(2*b)) (c) William Shakespeare
Тот же гость
Гость
« Ответ #5 : 10-09-2004 10:11 » 

>А что за форма? В смысле перекрыть
>Обычно создаются в OnCreate
>Незнаю если я тебя правильно понял то убери стили WS_HSCROLL и WS_VSCROLL

Убрав WS_*SCROLL я уберу скроллы, а мне нужно сделать их видимыми и ширше чем обычные.
Вот и вопрос - где находится OnCreate встроенных в форму ScrollBars?
Или может можно другим путем их изменить?
Записан
USBLexus
Опытный

ru
Offline Offline
Пол: Мужской
Кот рыжий


« Ответ #6 : 13-09-2004 01:48 » new

Именно исчезнут а ты чего хотел? Ты же хотел их перекрыть вот убирай в стилях а на OnCreate создавай свои m_HScroll.Create() m_VScroll.Create()

Если хочешь получить доступ к скролам на форме не создавая своих воспользуйся функцией
this->GetScrollBarCtrl()
Записан

#define QUESTION(b) (2*b)||(!(2*b)) (c) William Shakespeare
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines