jak zmusic program do reakcji na przycisniecie kolka myszki?
chce zrobic program ktory mi ulatwi codzienne zycie :]
jak zmusic program do reakcji na przycisniecie kolka myszki?
chce zrobic program ktory mi ulatwi codzienne zycie :]
W OnMouseDown tego, co tam ma reagować na naciśnięcia scrolla, sprawdzasz czy button = mbMiddle :|
http://delphi.about.com/od/objectpascalide/l/blvkc.htm
tego mi bylo trzeba! dzieki :)
a zeby nie zakladac nowego tematu
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
var
poX, poY : String;
position : TPoint;
begin
if Key = 34 then
begin
GetCursorPos(position);
poX := IntToStr(position.X);
poY := IntToStr(position.Y);
Label1.Caption := 'X: '+poX+' '+'Y: '+poY;
end;
end;
jak zrobic, zeby przy nacisnieciu srodkowego przycisku ustawialo kursor we wczesniej zapisanej pozycji?
musze to robic funkcjami ktore zwroca mi najpierw X a pozniej Y?
i ostatnie pytanie - czego mam szukac, zeby program mogl byc zminimalizowany do traya i dalej dzialal? tj. po wcisnieciu pgdn zapisywal wspolrzedne a po kliknieciu kolka ustawial tam kursor?
SetMousePos albo SetCursorPos, nie jestem pewien bo nie robie w Delphi, ale w c++ jest SetMousePos.
ja wiem jaka funkcja jest, SetCursorPos, ale jesli dam if key = xx then setcursorpos(position.x, position.y) pokazuje sie ze te wartosci mogly zostac blednie wczytane (warning) i po wcisnieciu klawisza ustawia mi sie on na x 1023, y 767
Position musisz mieć zadeklarowane globalnie, lub statycznie, inaczej będzie Ci gubić jego wartość.
var
position : TPoint;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
var
poX, poY : String;
begin
if Key = 34 then
begin
GetCursorPos(position);
poX := IntToStr(position.X);
poY := IntToStr(position.Y);
Label1.Caption := 'X: '+poX+' '+'Y: '+poY;
end;
end;
[Error] Unit1.pas(35): Types of actual and formal var parameters must be identical
[Error] Unit1.pas(36): Record, object or class type required
:/
zle deklaruje? ja na delphi sie z c przesiadlem, mam jeszcze rozne nawyki
Position przenieś do sekcji private lub public formy. Czasami Delphi się o to burzy, mino że nie powinno to przeszkadzać, ot złośliwość rzeczy martwych.
działa! dzięki wielkie! :-)