Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.04.2019, 12:04   #1
taras-proger77
Заблокирован
 
Регистрация: 17.12.2018
Сообщений: 514
По умолчанию Как создать горизонтальную полосу прокрутки?

Вертикальная
Код:
ScrollWindow=CreateWindow(L"scrollbar",
nullptr,
WS_CHILD| WS_VISIBLE|SBS_VERT,
0,
0,
0,
0,
Window,
(HMENU)0,
Instance,
nullptr);
и потом MoveWindow. А горизонтальную как? Растянуть её MoveWindow вдоль нижней стороны окна не проблема. Но на ней всё равно и ползунок вертикальный, и кнопки со стрелками, и перемещение ползунка.
taras-proger77 вне форума Ответить с цитированием
Старый 30.04.2019, 12:39   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

SB_HORZ же. И сразу задавать координаты и размеры
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 30.04.2019 в 12:42.
Аватар вне форума Ответить с цитированием
Старый 30.04.2019, 16:25   #3
taras-proger77
Заблокирован
 
Регистрация: 17.12.2018
Сообщений: 514
По умолчанию

Сразу не известны размеры родительского окна. Оно имеет своё родительское окно и тоже масштабируется и перемещается MoveWindow. Чтоб задать его размеры сразу, придётся дублировать их вычисление, всего же по родительскому окну родительского окна данной линейки и его потомкам ползают с помощью MoveWindow уже восемь потомков, а будет их как минимум двенадцать, вычислять размеры и положение приходится для каждого и дублировать придётся тоже доя каждого. Так нафига сразу? А какие сообщения и с какими параметрами посылает родительскому окну горизонтальная линейка прокрутки? Вертикальная посылает WM_VSCROLL с SB_TOP, SB_LINEUP, SB_PAGEUP, SB_LINEDOWN, SB_PAGEDOWN, SB_BOTTOM, SB_THUMBPOSITION и SB_THUMBTRACK в младшем слове предпоследнего параметра, причём, если младшее слово SB_THUMBPOSITION или SB_THUMBTRACK, то в старшем слове предпоследнего параметра лежит положение ползунка, оно увеличивается вниз, а UP и DOWND соответствуют не увеличению/уменьшению положения, а экранному перемещению TOP соответствует верху линейки, а BOTTOM – низу. А горизонтальная что шлёт?

Последний раз редактировалось taras-proger77; 30.04.2019 в 16:33.
taras-proger77 вне форума Ответить с цитированием
Старый 30.04.2019, 17:08   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Цитата:
Сообщение от taras-proger77 Посмотреть сообщение
А горизонтальная что шлёт
WM_HSCROLL
Мне интересно, вы принципиально не читаете документацию?
waleri вне форума Ответить с цитированием
Старый 30.04.2019, 17:17   #5
taras-proger77
Заблокирован
 
Регистрация: 17.12.2018
Сообщений: 514
По умолчанию

Её бы ещё найти.
taras-proger77 вне форума Ответить с цитированием
Старый 30.04.2019, 17:18   #6
taras-proger77
Заблокирован
 
Регистрация: 17.12.2018
Сообщений: 514
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
WM_HSCROLL
С какими параметрами?
taras-proger77 вне форума Ответить с цитированием
Старый 30.04.2019, 17:22   #7
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Цитата:
Сообщение от taras-proger77 Посмотреть сообщение
Её бы ещё найти.
Цитата:
Сообщение от taras-proger77 Посмотреть сообщение
С какими параметрами?
Не пробовали в гугле написать WM_HSCROLL и прочитать найденное?
waleri вне форума Ответить с цитированием
Старый 30.04.2019, 17:23   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

https://docs.microsoft.com/en-us/win...ols/wm-hscroll
p51x вне форума Ответить с цитированием
Старый 03.05.2019, 13:00   #9
taras-proger77
Заблокирован
 
Регистрация: 17.12.2018
Сообщений: 514
По умолчанию

Спасибо.
taras-proger77 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как добавить горизонтальную полосу прокрутки к Datagridview? Patriarc C# (си шарп) 3 07.05.2014 10:13
как убрать полосу прокрутки в фрейме ? admin-one Работа с сетью в Delphi 11 15.09.2012 23:45
создать горизонтальную гистограмму функции Y=div X в диапазоне х 1..10 хитро Помощь студентам 0 17.05.2011 14:01
Как создать горизонтальную и вертикальную полосы прокрутки в форме PagesDLG? RomanDemidov Помощь студентам 1 09.10.2010 20:16