Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Вниз

Как заставить приложение реагировать на Колесико мышки... )   Найти похожие ветки 

 
Алексей С.   (2007-01-30 21:47) [0]

Весь вопрос в теме.
Заранее спасибо!


 
Olivetti   (2007-01-30 21:59) [1]

Оно реагирует.


 
unknown ©   (2007-01-30 22:00) [2]

type
 TForm1 = class (TForm)
   procedure Wheel(var Message  : TMessage); message WM_MOUSEWHEEL;
 end;

var
 Form1  : TForm1;

implementation

{$R *.dfm}

procedure TForm1.WHEEL(var Message  : TMessage);
begin
 Caption := IntToStr(TWMMouseWheel(Message).YPos);
end;


 
Алексей С.   (2007-01-30 22:43) [3]

Спасибо!


 
Алексей С.   (2007-01-30 22:50) [4]

Только вот один момент: данная процедура выдает результат текущее положени У на момент прокрутки колеса, а вот КАК узнать куда было прокручено колесо вперед или назад ???


 
Olivetti   (2007-01-30 22:55) [5]

TWMMouseWheel(Message).WheelDelta


 
Olivetti   (2007-01-30 22:56) [6]

И, эта... inherited


 
Efir   (2007-01-30 22:58) [7]


> Только вот один момент: данная процедура выдает результат
> текущее положени У на момент прокрутки колеса, а вот КАК
> узнать куда было прокручено колесо вперед или назад ???


Ну дык зная предыдущее значение.


 
Алексей С.   (2007-01-30 22:59) [8]

Спасибо, вопрос снят. Задача решена. Пусть я до конца не разобрался... но вопросов пока нет. Всем Спасибо!


 
Olivetti   (2007-01-30 23:00) [9]

Ну дык зная предыдущее значение.

YPos - это положение курсора мыши относительно окна.
Казалось бы, при чем тут колесико?


 
Olivetti   (2007-01-30 23:10) [10]

Пусть я до конца не разобрался...

type
 TForm1 = class(TForm)
 private
   procedure MouseWheel(var Msg: TWMMouseWheel); message WM_MOUSEWHEEL; // 1
 end;

procedure TForm1.MouseWheel(var Msg: TWMMouseWheel);
begin
 Caption := IntToStr(Msg.WheelDelta);
end;


Пояснения:

Сообщения ОС передаются в оконную функцию окна, которое же - форма. Строка 1 декларирует метод-обрабочик сообщения от колесика мыши. WM_MOUSEWHHEL - константа, определяющая номер сообщения (все сообщения пронумерованы), и, при поступлении сообщения с этим номером, будет вызван этот метод-обработчик. В качестве параметра все методы-обработчики принимают типовую запись с параметрами сообщения (TWMMouseWheel - по размеру и некоторым полям полностью соответствует TMessage, а кое-где, типа, отличается). В этой записи хранится сопутствующая информация. Расположение данных в записи, ясное дело, зависит от номера сообщения. В обработчике (в примере) из записи извлекаются необходимые данные и выводятся в заголовок формы. Потом еще вызывается унаследованный обработчик. А, еще в записи можно вернуть результат обработки сообщения. Типа как-то так...



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.038 c
2-1170190894
Marker
2007-01-31 00:01
2007.02.18
Цветные строки в TMemo


15-1169716923
cyborg
2007-01-25 12:22
2007.02.18
Первый турецкий астронавт полетит на Луну в 2014 году


2-1170158867
fisherman
2007-01-30 15:07
2007.02.18
Печать этикеток в Делфи


3-1164873599
Литейщик
2006-11-30 10:59
2007.02.18
Подчиненные табличные формы в стиле Acсess


15-1169849835
esportsux
2007-01-27 01:17
2007.02.18
программа автоматизации работы к/к





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский