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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2017, 12:04   #1
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию Scrollbar

Здравствуйте. Есть стандартные средства, чтобы менять размеры ползунка, по аналогии с TrackBar ?
__Игорь__ вне форума Ответить с цитированием
Старый 06.06.2017, 14:03   #2
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию

Отбой. Нашел. До чего же там все криво реализовано ((
__Игорь__ вне форума Ответить с цитированием
Старый 07.06.2017, 13:43   #3
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию

новая проблема )) Мышкой ползунок двигается, а с клавиатуры нет, теряет фокус. Добавил setfocus в обработчик WM_HSCROLL - помогло, но чувствую есть решение более элегантное. Может кто знает ?
__Игорь__ вне форума Ответить с цитированием
Старый 07.06.2017, 13:51   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от __Игорь__ Посмотреть сообщение
но чувствую есть решение более элегантное
Нету.
Когда используете WS_HSCROLL е не отдельное окно, это часть окна, поэтому нет отдельного фокуса.
Можете вместо WS_HSCROLL создавать свой ползунок как child окно, тогда можете делать с ним что хотите, только будет хуже - для работы с ползунком надо будет сначала нажать tab чтоб поменять фокус и потом клавишами. Обычно окно просто реагирует на стрелки, pgup/pgdown, home, end, etc и меняет показания ползунка.
waleri вне форума Ответить с цитированием
Старый 07.06.2017, 13:58   #5
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Нету.
Когда используете WS_HSCROLL е не отдельное окно, это часть окна, поэтому нет отдельного фокуса.
Можете вместо WS_HSCROLL создавать свой ползунок как child окно, тогда можете делать с ним что хотите, только будет хуже - для работы с ползунком надо будет сначала нажать tab чтоб поменять фокус и потом клавишами. Обычно окно просто реагирует на стрелки, pgup/pgdown, home, end, etc и меняет показания ползунка.
у меня от мышки все отлично работает, а с клавы не хочет, даже есть предварительно ткнуть в скролл мышкой. Сейчас программно устанавливаю фокус по нажатию мышки, а уже потом клавой топчу, но как то это всё криво, на мой взгляд
__Игорь__ вне форума Ответить с цитированием
Старый 07.06.2017, 14:04   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Перечитайте пост выше. Вы его явно не поняли.
p51x вне форума Ответить с цитированием
Старый 07.06.2017, 14:10   #7
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Перечитайте пост выше. Вы его явно не поняли.
просто я опечатался и вместо WМ_HSCROLL набрал WS_HSCROLL

пысы. вернее даже не я, а уважаемый Валерий

Последний раз редактировалось __Игорь__; 07.06.2017 в 14:14.
__Игорь__ вне форума Ответить с цитированием
Старый 07.06.2017, 14:25   #8
__Игорь__
Пользователь
 
Регистрация: 25.04.2017
Сообщений: 26
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Перечитайте пост выше. Вы его явно не поняли.
уже раз пять перечитал, новых смыслов не обнаружил.... где там собака порылась ?
__Игорь__ вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ScrollBar Praud C# (си шарп) 1 12.07.2014 21:21
Scrollbar novichok1 Общие вопросы Delphi 1 29.01.2011 12:37
ScrollBar, vs 6.0 Gmyh Общие вопросы C/C++ 1 21.12.2010 12:52
scrollbar grater83 Общие вопросы Delphi 2 08.10.2009 12:00
scrollbar street-walker Общие вопросы Delphi 4 29.04.2009 23:45