Thema: Delphi Edit-Feld ohne Cursor

Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#10

Re: Edit-Feld ohne Cursor

  Alt 13. Jan 2007, 16:24
Hallo Stefan,

um das Caret in deinem Edit mit HideCaret() zu verstecken musst du den richtigen Augenblick abpassen - OnEnter() ist zu früh, da das Control zu diesem Zeitpunkt noch nicht den Fokus erhalten hat und das Caret noch gar nicht existiert. Da hilft dir eine benutzerdefinierte Nachricht UM_HIDECARET:

Delphi-Quellcode:
const
  UM_HIDECARET = WM_USER;

type
  TDemoForm = class(TForm)
    Edit: TEdit;
    procedure EditEnter(Sender: TObject);
  private
    procedure UMHideCaret(var msg: TMessage); message UM_HIDECARET;
  end;

procedure TDemoFrom.UMHideCaret(var msg: TMessage);
begin
  HideCaret(Edit.Handle);
end;

procedure TDemoFrom.EditEnter(Sender: TObject);
begin
  PostMessage(Handle, UM_HIDECARET, 0, 0);
end;
Wegen anderen Komponenten kannst du mal bei den LMDTools schauen oder bei Torry.

Freundliche Grüße
  Mit Zitat antworten Zitat