Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

возможности ScrollBar


Rel_ ©   (2003-08-11 10:55:00) 

Мастера, каким макаром мне сделать ScrollBar плоским (Flat) -(снять Ctrl3D)?

Можно ли энто сделать с помошью стандартного SCROLLINFO ?


Игорь Шевченко   (2003-08-12 09:54:00) [1]

Марсианин (11.08.03 20:20)

Это единственный выход


Gogol   (2003-08-11 21:34:00) [2]

> У меня есть обычный контрол (я так понял, что в дизайн-тайм)?
Если так, то почему бы сразу не взять плоский FlatStyle?


Марсианин   (2003-08-11 20:20:00) [3]

WS_OWNERDRAW правда для скроллбаров непробовал. а с WM_NCPAINT что делать? вставлять свой рисовальщик, обходя DefWindowProc? по-моему это не выход


Игорь Шевченко   (2003-08-11 13:14:00) [4]

События будут. Размеры узнать по GetSystemMetrics(SM_xxxSCROLL)


Rel_   (2003-08-11 13:08:00) [5]

Ладненько, а как мне узнать Recrangle скроллеров и опять же, будут ли при энтом продолжать обрабатываться события WMHScroll, WMVScroll ???


Игорь Шевченко   (2003-08-11 12:17:00) [6]

WM_NCPAINT


Rel_   (2003-08-11 12:00:00) [7]

Отличто, а как же мне тогда запретить стандартную отрисовку энтих скроллеров и заменить своей. При этом оставив все стандартные обрабочики: WMHScroll, WMVScroll (реакции на нажатие мыши на скроллере и перетаскивание её), реакцию на сообщение: SetScrollInfo и т.д. ?


Игорь Шевченко   (2003-08-11 11:55:00) [8]

Вот Scrollbar"ы у окон со стилями WS_xScroll и есть просто части окна, такие же как заголовок, полоса меню, и т.д.


Rel_   (2003-08-11 11:43:00) [9]

заниматься скроллингом клиентской части окна самостоятельно - пытался - что-то коряво у меня получается.

А вот первый выриант - WM_NCPAINT- энто же просто перерисовка части окна.


Игорь Шевченко   (2003-08-11 11:27:00) [10]

Обрабатывать WM_NCPAINT этого окна. Больше никак.
Как вариант - снять стили WS_VSCROLL (WS_HSCROLL) окна, нарисовать собственные Scrollbar"ы и заниматься скроллингом клиентской части окна самостоятельно


Rel_   (2003-08-11 11:20:00) [11]

to Игорь Шевченко ©

Тот, что появляется у окон со стилями WS_VSCROLL,WS_HSCROLL.

У меня есть обычный контрол. Я выставляю скроллеры след. обр.
SetScrollInfo(Handle,SB_VERT,&scrollInfo,true)

Вот можно как-нибудь изменить привичный вид энтого скроллера: например, пориосвать на нём или изменить его размеры.


Игорь Шевченко   (2003-08-11 11:09:00) [12]

Какой скроллбар имеется в виду ? Окно порожденное от класса SCROLLBAR или тот, что появляется у окон со стилями WS_VSCROLL,WS_HSCROLL ?


Rel_   (2003-08-11 11:01:00) [13]

Можно ли вообше менять размеры (например ширину вертикального скроллера) скроллера и рисовать на нём.


Наверх

Титульная страница Поиск, карта сайта Написать письмо