natürlich wird die Schleife nicht unterbrochen
Shift ist eine Variable, welche kurz vor Aufruf dieser Funktion gesetzt wurde ... du mußt da schon etwas entsprechend in OnMouseUp machen
Delphi-Quellcode:
type TForm4 = Class(TForm)
private
IstNochGeklickt: Boolean;
end;
procedure TForm4.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
IstNochGeklickt := True;
while IstNochGeklickt do
begin
'Tu was
end;
end;
procedure TForm4.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
IstNochGeklickt := False;
end;
{***** oder ***************************}
type TForm4 = Class(TForm)
private
IstNochGeklickt: Boolean;
end;
procedure TForm4.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Timer1.Enabled := True;
end;
procedure TForm4.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Timer1.Enabled := False;
end;
procedure TForm4.Timer1Timer(Sender: TObject);
begin
'Tu was
end;
[edit] RedBox einfach ma ignoriert ._.