Freigeben über


Interagieren mit der aktuellen Auswahl

Der Benutzer kann Text in einem umfangreichen Bearbeitungssteuerelement auswählen, indem er die Maus oder die Tastatur verwendet. Die aktuelle Auswahl ist der Bereich der markierten Zeichen oder die Position der Einfügemarke, wenn keine Zeichen ausgewählt sind. Eine Anwendung kann Informationen über die aktuelle Auswahl abrufen, festlegen, bestimmen, wann sie sich ändert, und die Auswahlherhebung ein- oder ausblenden.

Wichtige Informationen

Technologien

Voraussetzungen

  • C/C++
  • Programmierung der Windows-Benutzeroberfläche

Anweisungen

Interagieren mit der aktuellen Auswahl

Um die aktuelle Auswahl in einem umfangreichen Bearbeitungssteuerelement zu bestimmen, verwenden Sie die meldung EM_EXGETSEL . Verwenden Sie zum Festlegen der aktuellen Auswahl die meldung EM_EXSETSEL . Die CHARRANGE-Struktur wird für beide Nachrichten verwendet und gibt einen Zeichenbereich an. Um Informationen zum Inhalt der aktuellen Auswahl abzurufen, können Sie die EM_SELECTIONTYPE Meldung verwenden.

Eine Anwendung kann erkennen, wann sich die aktuelle Auswahl ändert, indem sie den EN_SELCHANGE Benachrichtigungscode verarbeitet. Der Benachrichtigungscode gibt eine SELCHANGE-Struktur an, die Informationen zur neuen Auswahl enthält. Ein Rich-Edit-Steuerelement sendet diesen Benachrichtigungscode nur, wenn Sie ihn mithilfe der EM_SETEVENTMASK Nachricht aktivieren.

Standardmäßig zeigt ein umfangreiches Bearbeitungssteuerelement die Auswahlmarkierungen an und blendet sie aus, wenn es den Fokus gewinnt und verliert. Sie können die Auswahlherhebung jederzeit mithilfe der EM_HIDESELECTION Meldung ein- oder ausblenden. Beispielsweise kann eine Anwendung ein Suchdialogfeld bereitstellen, um Text in einem umfangreichen Bearbeitungssteuerelement zu suchen. Die Anwendung kann übereinstimmenden Text auswählen, ohne das Dialogfeld zu schließen. In diesem Fall muss sie die EM_HIDESELECTION Meldung verwenden, um die Auswahl hervorzuheben.

Wie bei Bearbeitungssteuerelementen können Sie die ES_NOHIDESEL Fensterstil angeben, um zu verhindern, dass ein rich-Bearbeitungssteuerelement die Auswahlherhebung ausblendet, wenn es den Fokus verliert.

Alternativ zur Verwendung der EM_EXGETSEL - und EM_EXSETSEL-Nachrichten können Sie die aktuelle Auswahl mithilfe der EM_GETSEL abrufen und festlegen und EM_SETSEL Steuerelementmeldungen bearbeiten. Die EM_GETSEL Nachricht packt zwei 16-Bit-Zeichenindizes in ihren 32-Bit-Rückgabewert und funktioniert daher nur für Auswahlen, die vollständig innerhalb der ersten 64K liegen. Ein Rich-Edit-Steuerelement enthält jedoch niemals mehr als 32.000 Textzeichen, es sei denn, Sie erweitern diesen Grenzwert mithilfe der EM_LIMITTEXT oder EM_EXLIMITTEXT Nachricht. Für Auswahlen, die über die ersten 64 KB Text hinausgehen, gibt die EM_GETSEL-Nachricht –1 zurück. In einem solchen Fall können Sie weiterhin die Werte verwenden, die in wParam und lParam zurückgegeben werden, um die Anfangs- und Endzeichen der Auswahl zu finden.

Verwenden von Rich Edit-Steuerelementen

Demo zu allgemeinen Windows-Steuerelementen (CppWindowsCommonControls)