|
9 / 9 / 4
Регистрация: 14.02.2012
Сообщений: 49
|
|
Замена стандартного scrollBar на panel26.06.2012, 20:30. Показов 5096. Ответов 7
Метки нет (Все метки)
Был разработан собственный ScrollBar. Как заменить стандартный ScrollBar который появляется на панели на мой? Если изменять св-во panel.VerticalScroll.Value, то на момент перемещения ползунка на панели появляется плохо прорисованный стандартный ScrollBar, и самого перемещения плавного нет, объекты на панели мерцают, прорисовываются полностью только по окончании сролинга. Как решить эту проблему?
0
|
|
| 26.06.2012, 20:30 | |
|
Ответы с готовыми решениями:
7
ScrollBar у Panel Реализовать ScrollBar в panel, содержащей множество компонентов Замена стандартного курсора. |
|
624 / 495 / 43
Регистрация: 05.07.2010
Сообщений: 1,589
|
|
| 26.06.2012, 20:34 | |
|
Заменить его нельзя, его можно только отменить.
1) Поместить свой скрол рядом с панелью 2) Не делать с панелью того, что приводит к её скроллу. То есть всю необходимую обработку скролла реализовать самому. 3) На панель выводить только то, что соответствует положению своего скролла.
0
|
|
|
9 / 9 / 4
Регистрация: 14.02.2012
Сообщений: 49
|
|
| 26.06.2012, 21:37 [ТС] | |
|
имеете ввиду самостоятельно вручную изменять Location компонентов? это будет жутко тормозить и при этом поэтапно изменять положение каждого контрола в отдельности... Никто не знает как это реализовано в виндовс, что вообще происходит при этом скролинге, поможет ли использование WinApi (изменять значение положения ползунка через WinApi)?
Добавлено через 6 минут еще вопрос...если Panel.VerticalScroll.Visible == true, то при перемещении ползунка моего скролбара, все скролится замечательно, если же == false, то начинаются эти баги, чем может принципиально отличатся эти 2-е ситуации. Предполагаю есть винапи функция для скрытия скрол бара, может ли это помочь, (т.е в св-ве написано Panel.VerticalScroll.Visible == true, а винапи его скрывает и все скролится замечательно) ?
0
|
|
|
624 / 495 / 43
Регистрация: 05.07.2010
Сообщений: 1,589
|
|
| 27.06.2012, 05:33 | |
|
а что там вообще на панели?
я то думал что графика. а контролы на панель со скроллом - это как-то необычно.
0
|
|
|
9 / 9 / 4
Регистрация: 14.02.2012
Сообщений: 49
|
|
| 27.06.2012, 14:02 [ТС] | |
|
Для графики проблем не возникло бы, там есть класс Matrix и методы для смещения графики, а вот с элементами управления - другое дело. По сути винда ведь все равно все прорисовывает, можно ли указать что прорисовывать компоненты надо с позиции 0;-10 к примеру? смогу обойтись просто идеей реализации, что бы все как следует работало...
0
|
|
|
624 / 495 / 43
Регистрация: 05.07.2010
Сообщений: 1,589
|
|
| 27.06.2012, 18:06 | |
|
А почему бы тогда не воспользоваться вместо панели контейнером по имени FlowLayoutPanel ?
Когда у меня случалось во время работы оределяемое количество контролов, я как раз эту штуку применял.
1
|
|
|
9 / 9 / 4
Регистрация: 14.02.2012
Сообщений: 49
|
|
| 27.06.2012, 18:46 [ТС] | |
|
Собственно функционал как у FlowLayoutPanel я как раз думал как реализовать, спасибо за наводку. Но саму проблему со скролом это никак не решает. Что бы более понятно было, скрин ниже. Вот есть несколько таких блоков с информацией на каждой странице, для этого и нужен скролбар.
0
|
|
|
9 / 9 / 4
Регистрация: 14.02.2012
Сообщений: 49
|
|||||||||||
| 28.06.2012, 19:08 [ТС] | |||||||||||
|
прокрутку сделал так
Добавлено через 37 минут наткнувшись на статью http://msdn.microsoft.com/ru-r... 71729.aspx, максимальное значение ScrollBar можно найти так:
0
|
|||||||||||
| 28.06.2012, 19:08 | |
|
Помогаю со студенческими работами здесь
8
Замена стандартного копировщика Замена стандартного TreeView
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|