Вниз
Скачать: CL | DM;

Подскажите, как отловить прокрутку на мыши?   Найти похожие ветки 

← →
mmms   (2006-06-13 22:26) [0]

Можно просто какие сообщения нужно отлавливать, остальное думаю разберусь :) Заранее благодарю.


← →
mmms   (2006-06-13 22:29) [1]

ой, вроде уже нарыл :)
function GetNumScrollLines: Integer;
begin
  SystemParametersInfo(SPI_GETWHEELSCROLLLINES, 0, @Result, 0);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(GetNumScrollLines));
end;


← →
Eraser ©   (2006-06-13 22:57) [2]


> mmms   (13.06.06 22:26)

а зачем сообщения? всё уже перехвачено до нас, см. событие OnMouseWheel.
Если уж очень хочется перехватывать сообщения, то см. WM_MOUSEWHEEL.


← →
mmms   (2006-06-14 13:13) [3]

Сделать получилось :)
А ещё можно вопрос :)

Если элементы на ScrollBox, то если фокус входит в любой элемент, код перестаёт работать, можно код подправить так, чтобы скрол на ScrollBox1 работал не зависимо, где фокус на этом ScrollBox1 (т.е. на ScrollBox1 - Edit например, если туда установить курсор, то скрол не работает..)
procedure Tfmain.WMMOUSEWHEEL(var Message: TMessage);
begin
 with ScrollBox1.VertScrollBar do
  begin
    if Message.WParam<0
    then
      Position := Position + Increment
    else
      Position   := Position - Increment;
    inherited;
  end;
end;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.029 c
2-1152188298
FFFF
2006-07-06 16:18
2006.07.30
В запросе не работает "NZ"


2-1152525158
NewMan
2006-07-10 13:52
2006.07.30
Создание Компонена на основе TCustomControl


15-1151645539
Ega23
2006-06-30 09:32
2006.07.30
С Днём рождения! 30 июня


3-1148374698
saxon
2006-05-23 12:58
2006.07.30
DBX files


15-1151556036
Ega23
2006-06-29 08:40
2006.07.30
С Днём рождения! 29 июня




   Наверх