Форум: "KOL";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];
ВнизСкролинг мышью Найти похожие ветки
← →
Kealon © (2007-03-13 15:00) [0]У меня вопрос по известной баге
передача сообщения скролинга мыши активному окну а не окну над которым располагается мыш
для VCL я видел исправление
как сделать подправку с использованием KOL
← →
Dimaxx © (2007-03-15 13:15) [1]Ну я не считаю это багом. Сколлинг активного окна - все верно. Вот только если мышь увели за границу активного окна, тогда скроллинг должен выключиться, а не скроллить неактивное окно под курсором или скроллить активное окно.
PS: И вообще, как ты себе это представляешь - например, ты же не можешь открывать дверцы шкафа, закрытого другим. Грубо говоря, шкаф "неактивен" как и окно без фокуса. Открыть дверцу можно, но для этого нужно "активировать" его как и окно.
← →
homm © (2007-03-15 13:21) [2]> У меня вопрос по известной баге
>
> передача сообщения скролинга мыши активному окну а не окну
> над которым располагается мыш
> для VCL я видел исправление
> как сделать подправку с использованием KOL
Это вообще-то винда сообщения отсылает только активному окну. Не нравится- ставь дрйвер, который перехватывает и шлет окну под курсором. Мне тоже не нравится, и у меня драйвер такой стоит. Еще от мыши А4Tech остался, работал с Genius счас на Logotech трудится. КОЛ вообще непричем.
> для VCL я видел исправление
Нахрена это исправлять на уровне конкретного приложения, если это ло гика поведения системы?
← →
Galkov © (2007-03-15 15:27) [3]
> Это вообще-то винда сообщения отсылает только активному
> окну
Мне казалось, что окну, обладающему фокусом ввода
А MSDN пишет такое:
> The WM_MOUSEWHEEL message is sent to the focus window when
> the mouse wheel is rotated. The DefWindowProc function propagates
> the message to the window"s parent. There should be no internal
> forwarding of the message, since DefWindowProc propagates
> it up the parent chain until it finds a window that processes
> it.
И, как мне кажется, KOL не предоставляет возможности НЕ ВЫЗВАТЬ DefWindowProc (другой вопрос - почему?), поэтому до самого верхнего парента должно дойти.
Там и ставишь ловушку, в которой отправляешь уже свое сообщение окну под мышой, к примеру...
ИМХО
← →
homm © (2007-03-15 15:37) [4]> > Это вообще-то винда сообщения отсылает только активному окну
> Мне казалось, что окну, обладающему фокусом ввода
Может быть. В любом случае окно обладающее фокусом ввода будет активнм. Или есть исключения?
← →
kealon © (2007-03-16 06:50) [5]я конечно понимаю что это логика работы системы
но вот у меня окно(в понятии Windows) которое никогда не получает фокуса
и скролить его мышью не получается, а надо
я сделал компонент, скролинг он обрабатывает сам
я так понимаю из этого
> The WM_MOUSEWHEEL message is sent to the focus window when
> the mouse wheel is rotated. The DefWindowProc function propagates
> the message to the window"s parent. There should be no internal
> forwarding of the message, since DefWindowProc propagates
> it up the parent chain until it finds a window that processes
> it.
следует что главному окну сообщение не дойдёт
← →
kealon © (2007-03-16 06:52) [6]там два "окна", одно всегда должно быть под фокусом(один из его )
но скролить нужно оба
вот сайт проекта что бы было понятно
mudclient.narod.ru
← →
homm © (2007-03-16 07:12) [7]> вот сайт проекта что бы было понятно
> mudclient.narod.ru
Ужас, а не гамма.
Дава объясняй почему там 2 окна? Я так понял нижнее должно скрлоится вместа с средним? Зачем тогда их разделять?
А вобще-тоprocedure TForm1.Edit2MouseWheel(Sender: PControl;
var Mouse: TMouseEventData);
begin
SendMessagr(Edit3.Handle, WM_MouseWheel, ....);
end;
← →
kealon © (2007-03-16 12:48) [8]1. Оба окна служат для вывода текста
2. Текст в обоих друг от друга не зависит
3. Рабочее окно всегда нижнее и курсор всегда должен стоять на строке ввода
4. В нижнем окне текст пролистывается очень быстро(для заметки особенностей и служит верхнее окно, вот его тоже необходимо скролить)
на данный момент скролинг перехватывается EditBox-e
хотя самое идеальное должен перехватываться в панели просмотра
нижнее окно унаследовано от верхнего и в него как раз и добавлена строка ввода
← →
Савиатар (2007-03-16 12:53) [9]
> Ужас, а не гамма.
Не шаришь, чувак :)
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.041 c