Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Scroll / 11 сообщений из 11, страница 1 из 1
15.10.2003, 14:57
    #32294186
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Как заставить скролбокс с компонентами внутри скролиться по колесу.
Ставил автоскролл. Даже прописывал руками - видимо не вызывается для него событие. Он не активный чтоли. Хотя ставил табстоп и тыкал везде. Драйвера не причем - дерево крутится.
...
Рейтинг: 0 / 0
15.10.2003, 15:35
    #32294266
Duce
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Он не обрабатывает WM_MOUSEWHEEL
В принципе можешь свой компонент-наследник слепить,
добавив свой обработчик

procedure WMMOUSEWHEEL(var Message: TWMChar); message WM_MOUSEWHEEL;
...
Рейтинг: 0 / 0
15.10.2003, 15:57
    #32294304
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Не очень понял. А зачем у него тогда эвенты такие есть? Кто-то тогда воспринимает это событие - форма например? Ну кроме своего наследника есть вариант выкрутиться так???
...
Рейтинг: 0 / 0
15.10.2003, 16:03
    #32294310
koff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
У меня сделано так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
procedure TMainForm.ScrollBoxMouseWheel(Sender: TObject;
  Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint;
  var Handled: Boolean);
begin
  inherited;
  WheelScrollHandle(TScrollBox(Sender), WheelDelta);
end;

const cWheelSpeed =  10 ;
  cWheelDiv =  10 ; //Делитель, а то иногда слишком быстро
  CWheelDirtyDraw = False; //Отрисовавать при каждом скролле  
procedure WheelScrollHandle(sb: TScrollBox; delta: Integer);
  var
    OldPos: Integer;
begin
  if not cWheelEnabled then exit;
  if not sb.VertScrollBar.IsScrollBarVisible then exit;
  with sb.VertScrollBar do begin
    OldPos := Position;
    Position := Position - Round( (Delta / CWheelDiv) * (cWheelSpeed /  100 ) );

  end;
  if not cWheelDirtyDraw then SB.Invalidate;
end
...
Рейтинг: 0 / 0
15.10.2003, 16:17
    #32294332
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Вы ребята видимо прикалываетесь....

Я же и спрашиваю почему у меня не вываливается в события
ScrollBoxMouseWheel
ScrollBoxMouseWheelDown
ScrollBoxMouseWheelUp

Как реализовать в них я уж придумаю
...
Рейтинг: 0 / 0
15.10.2003, 16:34
    #32294355
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Или я не правильно понял вашего хода мыслей и енто имеется ввиду в сторону
TCustomForm.MouseWheelHandler
...
Рейтинг: 0 / 0
16.10.2003, 09:06
    #32294847
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Люди, ну плиз, помогите разобраться, ну очень надо.....
...
Рейтинг: 0 / 0
16.10.2003, 15:47
    #32295536
koff4
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Только что сляпал форму со скроллбоксом, кинул туда 3 edita, прописал обработчик - все скроллируется. Правда не скроллируются сетки и другие компоненты, сами колесо обрабатывающие. Но все остальное - OK. Даже и не знаю, где тут может быть трабл.
...
Рейтинг: 0 / 0
16.10.2003, 15:53
    #32295551
koff4
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Кстати обнаружил интересную вещь. ScrollBox должен имет фокус ввода (какой нибудь компонент в нем). Иначе никаих сообщений по колесу не вырабатывается. Возможно трабл имеено в этом.
...
Рейтинг: 0 / 0
17.10.2003, 12:09
    #32296429
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Ну человек, ну напиши ты плиз конкртено.

Только что сляпал форму со скроллбоксом, кинул туда 3 edita, прописал обработчик - все скроллируется

Какой написал обработчик??? Для какого объекта???? Для какого евента или к чему обработчик????
...
Рейтинг: 0 / 0
17.10.2003, 12:12
    #32296435
Andrei_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Scroll
Все, вроде разобрался. Всем спасибо большое....
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Scroll / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]