Einzelnen Beitrag anzeigen

Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: onClick und onMouseOver benutzen

  Alt 1. Jan 2008, 21:07
Hallo Leute und Euch allen ein gesundes neues Jahr!
Zitat von xX0815Xx:
@ sirius: Es geht imho darum dass beim Click auf den Button was ausgeführt werden soll, man den Button aber auch auf der Oberfläche verschieben kann (dann soll die Click-Prozedur nicht ausgeführt werden)
exacto del mundo, im moment ist es so das zwar das onmousedown ausgeführt wird,
aber das onclick überhaupt nicht. Habe das mit Rückgabe wert kontrolliert.

Auszug aus dem oncreate des Buttons:
Delphi-Quellcode:
aLabel.OnClick:=p1_1Click;
 aLabel.OnMouseDown:=verschiebebutton;
  aLabel.OnMouseUp:=speicherposition;
dann
Delphi-Quellcode:
procedure TKasse.verschiebebutton(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
if ssLeft in Shift then begin
with (Sender as TXiButton) do begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, $F012, 0);
end;
end;
end;
dann speichern
Delphi-Quellcode:
procedure TKasse.speicherposition(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
with (Sender as TXiButton) do begin
t1_quer.Close; t1_quer.SQL.Clear;
t1_quer.SQL.Add('UPDATE k_artdb SET');
t1_quer.SQL.Add('SETLEFT='+IntToStr(Left)+',');
t1_quer.SQL.Add('SETTOP='+IntToStr(Top)+' ');
t1_quer.SQL.Add('WHERE id='+IntToStr(TComponent(Sender).Tag)+'');
t1_quer.ExecSQL;
Showmessage('!');
end;
end;
das onlick erspar ich mir jetzt.

Vielen Dank Leute
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat