Wciśnięcie buttona

0

Jak zrobić coś takiego :
wciskamy buttona i podtrzymujemy lewy klawisz myszy
Jak obliczyć jak długo jest button jest wciśnięty ?

0

Jak zrobić coś takiego :
wciskamy buttona i podtrzymujemy lewy klawisz myszy
Jak obliczyć jak długo jest button jest wciśnięty ?

Moje rozwiązanie nie jest zbyt dokładne, ale jeżeli nie masz jakiś specjalnych wymagań, to ci wystarczy. Na początek wrzuć komponent TButton, dodaj komponent TTimer ustaw jego wartość Enabled=False, a interval=1000; W sekcji private zadeklaruj zmienną "Licznik" typu Integer; Oprogramuj wszystko w następujący sposób:

Komponent TBUTTON
zdarzenia
-OnMouseDown

[code]
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
licznik := 0;
timer1.Enabled := true;
end;
[/code]

-OnMouseUp

[code]
procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
timer1.Enabled := false;
//w tym miejscu możesz przechwycić czas poebierając go ze zmiennej Licznik
end;
[/code]

TTIMER
zdarzenia
-OnTimer
[code]
procedure TForm1.timer1Timer(Sender: TObject);
begin
Inc(licznik);
end;
[/code]

Jeżeli ci coś nie wyhcodzi to daj znać, a podeśle ci kod żródłowy :)

0

var Przed,Po,Wynik:TTime;

OnMouseDown:
Przed:=Now;

OnMouseUp:
Po:=Now;
Wynik:=Po-Przed;

0

lub bez Po
Wynik := Przed - Now;

1 użytkowników online, w tym zalogowanych: 0, gości: 1