Вверх ↑
Этот топик читают: Гость
Ответов: 8921
Рейтинг: 823
#46: 2013-02-16 18:41:49 ЛС | профиль | цитата
ser_davkin писал(а):
какой пока не скажу
[flood]Не иначе, как эропазл 18+ [/flood]
карма: 19

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#47: 2013-02-16 19:17:13 ЛС | профиль | цитата
Galkov писал(а):
Потому что wParam=0, это SB_LINEDOWN
Поставил wParam=5, потому что это SB_THUMBTRACK

Если быть более точным, то 0 это не SB_LINEDOWN

  { Scroll Bar Commands }
SB_LINEUP = 0;
SB_LINELEFT = 0;
SB_LINEDOWN = 1;
SB_LINERIGHT = 1;
SB_PAGEUP = 2;
SB_PAGELEFT = 2;
SB_PAGEDOWN = 3;
SB_PAGERIGHT = 3;
SB_THUMBPOSITION = 4;
SB_THUMBTRACK = 5;
SB_TOP = 6;
SB_LEFT = 6;
SB_BOTTOM = 7;
SB_RIGHT = 7;
SB_ENDSCROLL = 8;


карма: 22

0
Ответов: 9906
Рейтинг: 351
#48: 2013-02-16 19:42:40 ЛС | профиль | цитата
Ага, перепутал.
Чтобы не работало "в конце", надо действительно SB_LINEUP для вертикального, и SB_LINELEFT для горизонтального
Что одно и то же, и сегодня и есть на svn. Кажется так.
Если SB_LINEDOWN, то будет неправильно работать как раз в начале. Его тоже не надо
карма: 9

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#49: 2013-02-16 21:58:09 ЛС | профиль | цитата
Galkov писал(а):
Что одно и то же, и сегодня и есть на svn. Кажется так.

Там -1 стояло. Млин, а я уже исправил по твоей рекомендации на SB_THUMBTRACK. Так что делать будем
карма: 22

0
Ответов: 9906
Рейтинг: 351
#50: 2013-02-16 23:04:20 ЛС | профиль | цитата
Ну я недели две назад смотрел... Перед тем как в MSDN лезть, и у себя экспериментировать
Там было -1, но совсем в другом месте

#pas
SendMessage(h, WM_VSCROLL, 0, -1);
Это SB_LINEUP, что реально подтверждалось "недоездом" до конца.

То, чего было в IC этого топика:

#pas
SendMessage(h, WM_VSCROLL, -1, 0);
- по работе вроде нормально, но MSDN таких вариантов не приводит.
Собственно я потому и испросил аргументацию

У меня сейчас:

#pas
SendMessage(h, WM_VSCROLL, SB_THUMBTRACK, 0);
- по работе тоже нормально, и цифирки в MSDN обозначены.

Вот и решай

карма: 9

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#51: 2013-02-16 23:55:50 ЛС | профиль | цитата
Galkov писал(а):
Вот и решай

Давай оставим твой вариант, к тому же, ты его проверял. Но вот убей не помню, откуда я взял -1 в wParam, но откуда-то же я его вытащил. Может недокументированное что-то нарыл, но скрлероз покрыл все это медным тазом
карма: 22

0
Ответов: 9906
Рейтинг: 351
#52: 2013-02-17 09:57:35 ЛС | профиль | цитата
[flood]
Жванецкий писал(а):
Не могу ничего вспомнить, потому что невозможно наморщить лоб
Будем ждать вспышек памяти, или сведений со стороны
[/flood]
карма: 9

0
Ответов: 9906
Рейтинг: 351
#53: 2013-02-23 11:09:32 ЛС | профиль | цитата
Слушай, nesco, вот чего мне подумалось...
А нафига нам эти пляски с бубном насчет проверки минимума и максимума
Такое впечатление, что винда сама все проверяет...

Попробуй, и скажи свое мнение
Мое такое: меньше "буковок" - меньше проблем. Потому-что ясность ума при этом БОЛЬШЕ


#pas
procedure THIScrollBox._work_doHScroll;
begin
SetScrollPos(Control.Handle, SB_HORZ, ReadInteger(_Data,_data_HScroll), True);
SendMessage(Control.Handle, WM_HSCROLL, SB_THUMBTRACK, 0);
end;
карма: 9

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#54: 2013-02-23 13:43:25 ЛС | профиль | цитата
Galkov писал(а):
Попробуй, и скажи свое мнение

Сам, поди, уже проверил
------------ Дoбавленo в 13.43:
Работате, вроде
карма: 22

0
Ответов: 9906
Рейтинг: 351
#55: 2013-02-23 14:01:40 ЛС | профиль | цитата
nesco писал(а):
Сам, поди, уже проверил

на скорую руку -- в TraceSpy
Мало ли... вдруг кто-то немыслимо-хитромудрым способом это юзает.
Пусть и он нам доложит, как там у него дела ((c)Жванецкий)
карма: 9

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#56: 2013-02-23 14:25:49 ЛС | профиль | цитата
Galkov писал(а):
вдруг кто-то немыслимо-хитромудрым способом это юзает

Я сделал тупо -- взял большую картинку, засунул ее в скроллбокс и дал циклом перебор до заведомо большего числа. Ничего необычного не заметил
карма: 22

0
56
Сообщение
...
Прикрепленные файлы
(файлы не залиты)