Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Herausfinden, in welchem RichEdit der User schreibt (https://www.delphipraxis.net/133174-herausfinden-welchem-richedit-der-user-schreibt.html)

TheMiller 27. Apr 2009 11:13


Herausfinden, in welchem RichEdit der User schreibt
 
Hallo, ich bin's wieder ;)

Hab noch eine Frage zu RichEdits. Und zwar habe ich ein PageControl mit mehreren Pages. Auf jeder Page ist ein RichEdit.

Ich habe mit nun einen HotKey auf STRG+S gelegt und möchte nun eine Aktion ausführen. Ich möchte, dass STRG+S für jedes RichEdit gilt, aber nur aktuell dort ausgeführt wird, in dem der User gerade schreibt.

Ich könnte abfragen, welche Seite des PageControls gerade offen ist und demnach die Aktion ausführen, aber wenn ich das Programm mal "umbaue", dann könnte es zu Problemen kommen.

Hat jemand von euch noch eine bessere Idee?

Danke

jaenicke 27. Apr 2009 11:24

Re: Herausfinden, in welchem RichEdit der User schreibt
 
Als Beispiel:
Delphi-Quellcode:
  if ActiveControl is TRichEdit then
    ShowMessage(TRichEdit(ActiveControl).Text);

Klaus01 27. Apr 2009 11:24

Re: Herausfinden, in welchem RichEdit der User schreibt
 
Hallo,

vielleicht kannst Du ja das Ereignis OnEnter nutzen.

Zitat:

Zitat von DelphiHilfe
property OnEnter: TNotifyEvent;

Description

Use the OnEnter event handler to cause any special processing to occur when a control becomes active.

The OnEnter event does not occur when switching between forms or between another application and the application that includes the control.

When switching between controls in separate container controls such as the TPanel and the TGroupBox controls, an OnEnter event occurs for the container before the OnEnter event of the contained control.

Similarly, an OnExit event of the container occurs after the OnExit event of the control in a container when focus moves to another control outside the container.

Grüße
Klaus

Tyrael Y. 27. Apr 2009 11:30

Re: Herausfinden, in welchem RichEdit der User schreibt
 
Ich würde die Tag-Eigenschaft der Richedits dafür benutzen.

zb.
Konstanten mit einer Zahl für jeden Richedit.
Diese Konstante der Richedit Eigenschaft Tag zuweisen.
Beim behandeln in einer case Anweisung prüfen auf welchen Wert die Tag-Eiegnschaft des aktuellen
Richedits gesetzt ist.

TheMiller 13. Mai 2009 19:11

Re: Herausfinden, in welchem RichEdit der User schreibt
 
Hallo,

sorry für die späte Rückmeldung - ich hatte aber eher keine Zeit, an dem Programm weiterzuarbeiten.

Zitat:

Zitat von Klaus01
vielleicht kannst Du ja das Ereignis OnEnter nutzen.

Funktioniert natürlich. Hätte auch selbst drauf kommen können.

Danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz