andrestudio писал(а):
выручите ссылкой или сам IC если можноА черт его знает, где этот IC, может у Леонида еще остался. Я тут с перестановками HiAsm'a порастерял большинство примеров
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
andrestudio писал(а): выручите ссылкой или сам IC если можноА черт его знает, где этот IC, может у Леонида еще остался. Я тут с перестановками HiAsm'a порастерял большинство примеров |
|||
карма: 22 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Леонид!!!, на тебя вся надежда , nesco а что раньше мешало в ChildScrollBox эту функцию встроить? У меня допустим скролы в ChildScrollBox неработают от колеса мыши, это так и должно быть
|
|||
карма: 4 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
andrestudio писал(а): У меня допустим скролы в ChildScrollBox неработают от колеса мышиИ у меня не работают andrestudio писал(а): а что раньше мешало в ChildScrollBox эту функцию встроить?А я чего-то от специалистов не услышал вразумительного ответа о его необходимости |
|||
карма: 22 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Ну честно говоря как минимум странно. Ну допустим програмно может быть и необезательно но от колеса мыши в зависимости от установленного фокуса (горизонтальный, вертикальный) как бы сам компонент велит, пускай может эту процедуру можно отключать где она ненужна. Уважаемые не оставайтесь в стороне ибо есть вероятность того что и Вы можете оказаться в такой ситуации, предлагаю обсудить этот контрол на предмет его неполноценности.
|
|||
карма: 4 |
|
Ответов: 3655
Рейтинг: 69
|
|||
andrestudio писал(а): предлагаю обсудить этот контрол на предмет его неполноценности.Мне кажется ответ однозначен - если есть скрол он должен работать от колеса. Везде так!!!!!! |
|||
карма: 0 |
| ||
Голосовали: | Konst |
Ответов: 16884
Рейтинг: 1239
|
|||
Вячеслав писал(а): если есть скрол он должен работать от колеса"Вор должен сидеть в тюрьме !" |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Вячеслав писал(а): Везде так!!!!!!Ну так и сделай "как везде", или предложения выложи -- как сделать |
|||
карма: 22 |
|
Ответов: 3851
Рейтинг: 159
|
|||
andrestudio писал(а): не оставайтесь в сторонеПомнится, не очень давно кто-то тоже "удивлялся" отсутствию скролов у етого элемента. Кароче +2. |
|||
карма: 0 |
|
Ответов: 199
Рейтинг: 44
|
|||
Поддерживаю, скрол необходим, но мне например нужен и программный скрол тоже.
|
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Андрей. писал(а): делал таблицу на этом боксеА что, обычная таблица скролл разве не поддерживает Я, конечно, понимаю -- использовать этот скролл для картинок, но вот для таблицы ??? |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Имея во всех Box-ах точку doEnsureVisible, можно свободно организовать и PageUp и PageDown и перейти в начало и перейти в конец.
|
|||
карма: 25 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): или предложения выложи -- как сделатьВот может это поможет. http://www.delphiworld.narod.ru/base/other_windows2.html ------------ Дoбавленo: Или это Прокрутка для TListView или TTreeView
// KEYWORDS: SendMessage, WM_HSCROLL, WM_VSCROLL // scroll a ListView vertically down SendMessage(ListView1->Handle, WM_VSCROLL, SB_LINEDOWN, 0); // scroll a TreeView vertically up SendMessage(TreeView1->Handle, WM_VSCROLL, SB_LINEUP, 0); // Here are some other scroll parameters that can be sent... { SB_BOTTOM Scrolls to the lower right. SB_ENDSCROLL Ends scroll. SB_LINEDOWN Scrolls one line down. SB_LINEUP Scrolls one line up. SB_PAGEDOWN Scrolls one page down. SB_PAGEUP Scrolls one page up. SB_TOP Scrolls to the upper left. } ------------ Дoбавленo: Или это Как перехватить сообщения прокрутки в TScrollBox
Следующий пример перхватывает сообщения скроллирования в компоненте TScrollBox, тем самым синхронизируя два скролбара. Если один из скролбаров изменяет своё положение, то значение второго скролбара изменяется на такую же величину. Сообщения скролирования перехватываются путём сабклассинга оконной процедуры (WinProc) у скролбара. type {$IFDEF WIN32} WParameter = LongInt; {$ELSE} WParameter = Word; {$ENDIF} LParameter = LongInt; {Declare a variable to hold the window procedure we are replacing} var OldWindowProc : Pointer; function NewWindowProc(WindowHandle : hWnd; TheMessage : WParameter; ParamW : WParameter; ParamL : LParameter) : LongInt {$IFDEF WIN32} stdcall; {$ELSE} ; export; {$ENDIF} var TheRangeMin : integer; TheRangeMax : integer; TheRange : integer; begin if TheMessage = WM_VSCROLL then begin {Get the min and max range of the horizontal scroll box} GetScrollRange(WindowHandle, SB_HORZ, TheRangeMin, TheRangeMax); {Get the vertical scroll box position} TheRange := GetScrollPos(WindowHandle, SB_VERT); {Make sure we wont exceed the range} if TheRange < TheRangeMin then TheRange := TheRangeMin else if TheRange > TheRangeMax then TheRange := TheRangeMax; {Set the horizontal scroll bar} SetScrollPos(WindowHandle, SB_HORZ, TheRange, true); end; if TheMessage = WM_HSCROLL then begin {Get the min and max range of the horizontal scroll box} GetScrollRange(WindowHandle, SB_VERT, heRangeMin, TheRangeMax); {Get the horizontal scroll box position} TheRange := GetScrollPos(WindowHandle, SB_HORZ); {Make sure we wont exceed the range} if TheRange < TheRangeMin then TheRange := TheRangeMin else if TheRange > TheRangeMax then TheRange := TheRangeMax; {Set the vertical scroll bar} SetScrollPos(WindowHandle, SB_VERT, TheRange, true); end; {Call the old Window procedure to allow processing of the message.} NewWindowProc := CallWindowProc(OldWindowProc, WindowHandle, TheMessage, ParamW, ParamL); end; procedure TForm1.FormCreate(Sender: TObject); begin {Set the new window procedure for the control and remember the old window procedure.} OldWindowProc := Pointer(SetWindowLong(ScrollBox1.Handle, GWL_WNDPROC, LongInt(@NewWindowProc))); end; procedure TForm1.FormDestroy(Sender: TObject); begin {Set the window procedure back to the old window procedure.} SetWindowLong(ScrollBox1.Handle, GWL_WNDPROC, LongInt(OldWindowProc)); end; |
|||
карма: 0 |
|
Ответов: 3851
Рейтинг: 159
|
|||
nesco писал(а): А что, обычная таблица скролл разве не поддерживает |
|||
карма: 0 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Андрей. писал(а): не - мне нада была таблица на панеляхПонял |
|||
карма: 22 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Ну что остаётся только надеятся что когда нибудь всёже ChildScrollBox попадёт в очередь на доработку, а это уже плюс
|
|||
карма: 4 |
|