Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
#1

Праметры скролла

15.10.2015, 10:08. Просмотров 888. Ответов 10
Метки нет (Все метки)

Использую на форме вертикальный скролл. Проблема в том, что я не могу корректно задать ему размеры. То есть промотать надо 100 пикселей, к примеру, а выглядит скролл так, как будто мотать надо гораздо дольше.
Подскажите как можно его корректно настроить?
Или другой вариант, не использую на форме AutoScroll так как при появлении вертикального скролла появляется и горизонтальный, который мне не нужен. Отключить горизонтальный скролл не получилось, как и скрыть его с показа.
Можно ли как-то изменить автоскролл?

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2015, 10:08
Ответы с готовыми решениями:

Как переделать стиль скролла
Как изменить боковой скроллинг Допстим так

Прокрутка скролла колесом мыши
Добрый вечер. У меня возникла следующая проблема... Сделал прокрутку...

Зависает ползунок скролла в листбоксе
Сдал программу на 99%, проблема в том, что при гененерации и выводе 100000 и...

Смещение ползунков скролла в контроле Panel
Помогите! Уже несколько дней бьюсь над попыткой сделать адекватный зумм в...

Как можно "заморозить" ListView при прокрутке скролла?
Добрый день! Контрол Listview работает в виртуальном режиме, с добавлением...

10
UrrreeeZ
1 / 1 / 4
Регистрация: 29.10.2012
Сообщений: 31
15.10.2015, 14:25 #2
Цитата Сообщение от Bill77 Посмотреть сообщение
Использую на форме вертикальный скролл. Проблема в том, что я не могу корректно задать ему размеры. То есть промотать надо 100 пикселей, к примеру, а выглядит скролл так, как будто мотать надо гораздо дольше.
Подскажите как можно его корректно настроить?
задать меньшее значение свойству Maximum
Цитата Сообщение от Bill77 Посмотреть сообщение
Или другой вариант, не использую на форме AutoScroll так как при появлении вертикального скролла появляется и горизонтальный, который мне не нужен. Отключить горизонтальный скролл не получилось, как и скрыть его с показа.
Можно ли как-то изменить автоскролл?
если я вас правильно понял, свойство ScrollBars вам поможет
0
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
15.10.2015, 14:28  [ТС] #3
Цитата Сообщение от UrrreeeZ Посмотреть сообщение
задать меньшее значение свойству Maximum
Проблема в том, что именно его менять весьма проблемно. Если уменьшить максимум, скролл будет не до конца прокручиваться, то есть не всё отображать.
Цитата Сообщение от UrrreeeZ Посмотреть сообщение
если я вас правильно понял, свойство ScrollBars вам поможет
Свойство у панели? Сейчас попробую.
0
UrrreeeZ
1 / 1 / 4
Регистрация: 29.10.2012
Сообщений: 31
15.10.2015, 14:38 #4
Цитата Сообщение от Bill77 Посмотреть сообщение
Проблема в том, что именно его менять весьма проблемно. Если уменьшить максимум, скролл будет не до конца прокручиваться, то есть не всё отображать.
Привяжите дельту к максимуму
0
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
15.10.2015, 14:40  [ТС] #5
Цитата Сообщение от Bill77 Посмотреть сообщение
Свойство у панели? Сейчас попробую.
В общем нет у панели такого свойства, оно только у веб форм. Если что, я пишу только в win forms.

Добавлено через 2 минуты
Цитата Сообщение от UrrreeeZ Посмотреть сообщение
Привяжите дельту к максимуму
А можно чуть подробнее? Как это сделать?
0
UrrreeeZ
1 / 1 / 4
Регистрация: 29.10.2012
Сообщений: 31
15.10.2015, 14:45 #6
Покажите код, в котором осуществляется взаимодействие со скроллом
0
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
15.10.2015, 14:48  [ТС] #7
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void DetermineGroupBoxHeight()//9896
        {
            int changeHeight = Math.Max(this.prefix.Height, this.postfix.Height);
            DetermineMarkerCoordY(changeHeight);
            this.gbLocation.Height = this.markerForList.Location.Y + this.markerForList.Height + 8;
            this.vScrollBar1.Minimum = 0;
            this.vScrollBar1.SmallChange = 16;
            this.vScrollBar1.Maximum = (this.gbLocation.Height - this.middlePanel.Height)*40;
            if (this.vScrollBar1.Maximum == 0)
                this.vScrollBar1.Visible = false;
            else
                this.vScrollBar1.Visible = true;
        }
 
private void vScrollBar1_ValueChanged(object sender, System.EventArgs e)//9896
        {
            this.gbLocation.Top = -this.vScrollBar1.Value/40;
        }
 
void vScrollBar1_MouseWheel(object sender, MouseEventArgs e)
        {
            if (e.Delta > 0)
            {
                this.vScrollBar1.Value -= 2*this.vScrollBar1.SmallChange;
            }
            else
            {
                this.vScrollBar1.Value += 2*this.vScrollBar1.SmallChange;
            }
        }
0
UrrreeeZ
1 / 1 / 4
Регистрация: 29.10.2012
Сообщений: 31
15.10.2015, 14:54 #8
C#
1
2
3
4
private void vScrollBar1_ValueChanged(object sender, System.EventArgs e)//9896
        {
            this.gbLocation.Top = -this.vScrollBar1.Value * this.gbLocation.Height / vScrollBar1.Maximum;
        }
0
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
15.10.2015, 15:00  [ТС] #9
Совсем не то, результат одинаков.
0
Storm23
Эксперт .NETАвтор FAQ
5955 / 3554 / 1336
Регистрация: 11.01.2015
Сообщений: 4,683
Записей в блоге: 31
15.10.2015, 15:56 #10
Цитата Сообщение от Bill77 Посмотреть сообщение
Отключить горизонтальный скролл не получилось, как и скрыть его с показа.
Для отключения горизонтального скролла, вставьте в ваше форму:
C#
1
2
3
4
5
6
7
8
9
10
        const int SB_HORZ = 0;
 
        [DllImport("user32.dll")]
        static extern bool ShowScrollBar(IntPtr hWnd, int wBar, bool bShow);
 
        protected override void OnResize(EventArgs e)
        {
            base.OnResize(e);
            ShowScrollBar(this.Handle, SB_HORZ, false);
        }
0
Bill77
0 / 0 / 0
Регистрация: 23.09.2015
Сообщений: 43
16.10.2015, 13:47  [ТС] #11
Цитата Сообщение от Storm23 Посмотреть сообщение
Для отключения горизонтального скролла, вставьте в ваше форму:
Может я как-то не так использую, но не сработало.
0
16.10.2015, 13:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2015, 13:47

Праметры графиков
Установил себе MathCad 15. Обнаружил, что при настройке представления графиков...

Установить праметры в запросе
Добрый день! Помогите пожалуйста. Есть запрос к регистру сведений. Нужно...

Формальные праметры в процедуре
1. В каких пределах и какие числа получаются с помощью данной формулы Random...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru