Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Как заставить колесо мышки прокручивать скрол на форме   Найти похожие ветки 

 
Newb   (2004-03-19 08:51) [0]

Есть форма которая специально делается размером меньше чем компоненты на ней. На форме ставиться скрол. Можно ли заставить прокручивать этот скрол колесом мышки?

Спасибо.


 
PVOzerski ©   (2004-03-19 10:43) [1]

Скрол - это tScrollBar? Если да, то можно.
У меня получалось так (если на форме не было "автоматически возникающих scrollbar"ов"):

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   ScrollBar1: TScrollBar;
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
var
OLDSC:longint;
function Wheeler(hwnd,msg,wp,lp:longint):longint;stdcall;
var
 dummy:longint;
begin
 if MSG=WM_MOUSEWHEEL then
  begin
   if wp<0 then
    begin
     if Form1.ScrollBar1.Position<Form1.ScrollBar1.Max then
      Form1.ScrollBar1.Position:=succ(Form1.ScrollBar1.Position);
    end
   else
    begin
     if Form1.ScrollBar1.Position>Form1.ScrollBar1.Min then
      Form1.ScrollBar1.Position:=pred(Form1.ScrollBar1.Position);
    end
  end;
 Result:=CallWindowProc(pointer(OLDSC),hwnd,msg,wp,lp);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 OLDSC:=SetWindowLong(ScrollBar1.Handle,GWL_WNDPROC,longint(@Wheeler));
end;



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

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.048 c
3-1078928621
tria
2004-03-10 17:23
2004.04.04
Ошибка в IBX?


14-1078870598
Rauf
2004-03-10 01:16
2004.04.04
Как обратиться за помощью к borland, куда писать!!!


1-1079698713
Артем К.
2004-03-19 15:18
2004.04.04
Свой индикатор в DBGrid


1-1079270474
YurikGl
2004-03-14 16:21
2004.04.04
EhLib


3-1078512446
Karlson
2004-03-05 21:47
2004.04.04
выделение нескольких строк в DbGride