Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#8

AW: beim wieder aktivieren klick auf Bild auslösen ?

  Alt 15. Feb 2015, 10:26
@himitsu das Form OnActivate hab ich schon probiert ..
da kommt er nicht rein ..
ich denk weil es eigentlich auch nicht zu sehen ist(transparent)
und wird deswegen ja auch nicht aktiviert..
Nee, ich denk dann eher, daß dieses Form.OnActivate wohl doch nur beim Fokuswechsel der Fenster innerhalb der Anwendung aufgerufen wird.

Wenn ich bei einer nicht-aktiven Anwendung auf ein TImage klicke, dann kommen bei mir diese Ereignisse rein:
Image1.OnMouseActivate // k.A. seit wann es Diese gibt -> WM_MOUSEACTIVATE CM_MOUSEACTIVATE
Form.OnMouseActivate
ApplicationEvents1.OnActivate
Image1.OnClick

Also OnClick wird ebenfalls aufgerufen.
Wenn das bei dir nicht ist, dann muß sich irgendwas verändert haben, entweder durch dich oder in der VCL, gegenüber einer ganz stinknormalen Standardanwendung (XE3/XE7).

Und bei Allem, was nicht Standard ist, da kommt man ohne eine reproduzierbares Testszenario oder eine Testanwendung nicht umher.

TestCode:
Delphi-Quellcode:
procedure TForm24.ApplicationEvents1Activate(Sender: TObject);
begin
  Memo1.Lines.Add('ApplicationEvents1.OnActivate');
end;

procedure TForm24.ApplicationEvents1Deactivate(Sender: TObject);
begin
  Memo1.Lines.Add('ApplicationEvents1.OnDeactivate');
end;

procedure TForm24.FormActivate(Sender: TObject);
begin
  Memo1.Lines.Add('Form.OnActivate');
end;

procedure TForm24.FormClick(Sender: TObject);
begin
  Memo1.Lines.Add('Form.OnClick');
end;

procedure TForm24.FormMouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest: Integer;
  var MouseActivate: TMouseActivate);
begin
  Memo1.Lines.Add('Form.OnMouseActivate');
end;

procedure TForm24.FormMouseEnter(Sender: TObject);
begin
  //Memo1.Lines.Add('Form.OnMouseEnter');
end;

procedure TForm24.FormMouseLeave(Sender: TObject);
begin
  //Memo1.Lines.Add('Form.OnMouseLeave');
end;

procedure TForm24.Image1Click(Sender: TObject);
begin
  Memo1.Lines.Add('Image1.OnClick');
end;

procedure TForm24.Image1MouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest: Integer;
  var MouseActivate: TMouseActivate);
begin
  Memo1.Lines.Add('Image1.OnMouseActivate');
end;

procedure TForm24.Image1MouseEnter(Sender: TObject);
begin
  //Memo1.Lines.Add('Image1.OnMouseEnter');
end;

procedure TForm24.Image1MouseLeave(Sender: TObject);
begin
  //Memo1.Lines.Add('Image1.OnMouseLeave');
end;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat