Delphi - opet scrollovani v D6 - problem
Tomáš Werschall
tom84@seznam.cz
Neděle Leden 9 13:19:31 CET 2005
A co jeste zjistovat zda je mys nad elementem ci neni?Pokud ano ak provadet
skrolovani, jinak ne.Jinak to co popisujete je standartne ve woknech.
----- Original Message -----
From: "Prichy" <prichy@volny.cz>
To: <hw-list@hw.cz>
Sent: Saturday, January 08, 2005 8:06 PM
Subject: OT: Delphi - opet scrollovani v D6 - problem
Zdravim vsechny a zadam o nasmerovani:
Kdyz jsem zjistil, ze v Delphi 6 nefunguje scrollovani
koleckem mysi RichEditu (zatimco Memo chodi) a navic
jsem potreboval rolovat i ScrollBox (v nem 2 panely a nejake
neokeni komponenty) napsal jsem si nasl. obsluhu OnMouseWheel XX
procedure TForm1.FormMouseWheelDown(Sender: TObject; Shift: TShiftState;
MousePos: TPoint; var Handled: Boolean);
var
hWnd1, hWnd2,hWnd3,hWnd4,hWnd5: THandle;
rPos: TPoint;
begin
if boolean(GetCursorPos(rPos))
then
begin
hWnd1 := WindowFromPoint(rPos); // vraci handle z objektu pod mysi
hWnd2:= RichEdit1.Handle;
hWnd5:= ListBox2.Handle;
If hWnd1 = hWnd2 then RichEdit1.Perform(WM_VSCROLL,SB_LINEDOWN,0);
If hWnd1 = hWnd5 then ListBox2.Perform(WM_VSCROLL,SB_LINEDOWN,0); //
po uprave
hWnd1 := WindowFromPoint(rPos);
hWnd2:= ScrollBox1.Handle;
hWnd3:= Panel3.Handle;
hWnd4:= Panel4.Handle;
If (hWnd1 = hWnd2) or (hWnd1=hWnd3) or (hWnd1=hWnd4) then
ScrollBox1.Perform(WM_VSCROLL,SB_LINEDOWN,0);
end;
end;
Chodi to slusne, kdyz je nad komponentou mys roluje se prave ona.
Ale pri dalsim vyvoji softu jsem na form umistil ListBox2, nastal problem.
Zustane-li focus na ListBoxu roluje tento i kdyz nechci. ( jsem mysi
jinde a chci
rolovat komponentu pod mysi) To znamena ListBox si ubsluhuje OnMouseWheelXX
a sam si roluje, coz je nezadouci.
Vi, prosim, nekdo jak tomu zamezit.
Dekuji za napady a prosim spise polopaticky, pravdepodobne
vim, ze pujde o "chytani zprav" a nejsem s tomto buhvijak zdatny :)
Prichy
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list@list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list