Einzelnen Beitrag anzeigen

Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Toolwindow aufrufen und zurück zur aufrufenden Form

  Alt 10. Sep 2014, 15:49
OK, dachte du kannst das "einfach" für deine Bedürfnisse umschreiben und nutzen. Aber dann hab ich das mal eben für dich gemacht.

1. Im OnEnter des Editfeldes:
Delphi-Quellcode:
procedure TForm15.Edit1Enter(Sender: TObject);
begin
  ToolWin.Visible := True; // Formular anzeigen ACHTUNG hier kein .Show verwenden
end;
2. Im ToolWindow:
Delphi-Quellcode:
procedure TToolWin.FormHide(Sender: TObject);
begin
  ShowWindow(handle, SW_HIDE);
end;

procedure TToolWin.FormShow(Sender: TObject);
begin
  Left := Screen.WorkAreaLeft + Screen.WorkAreaWidth - Width;
  Top := Screen.WorkAreaTop + Screen.WorkAreaHeight - Height;
  ShowWindow(handle, SW_SHOWNOACTIVATE); // das müssen wir machen, damit das Fenster keinen Fokus bekommt
end;
3. Zur Sicherheit noch die DFM des Toolwindows:
Delphi-Quellcode:
object ToolWin: TToolWin
  Left = 0
  Top = 0
  BorderIcons = [biSystemMenu]
  BorderStyle = bsDialog
  Caption = 'eingehender Anruf'
  ClientHeight = 220
  ClientWidth = 458
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -24
  Font.Name = 'Tahoma'
  Font.Style = []
  FormStyle = fsStayOnTop
  OldCreateOrder = False
  Position = poDefaultSizeOnly
  OnHide = FormHide
  OnShow = FormShow
  PixelsPerInch = 96
  TextHeight = 29
end
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)

Geändert von baumina (11. Sep 2014 um 06:48 Uhr)
  Mit Zitat antworten Zitat