TRichEdit Keyboard Event
-
Hallo,
habe gerade festgestellt, dass wenn man auf einen TRichEdit Feld folgende Tastenkombination ausführt, eine automatsiche Zeilennummerierung erfolgt:
"STR" + "SHIFT" + "L"
Mich würde gerne intressieren, wer für die Ausführung dieses Befehls verantwortlich ist und wie man diesen über BCB steuern kann, bzw. desssen Eigenschaften verändern kann.
Die Nummerierung sieht dann folgendermaßen aus:
1*STR+SHIFT+L:° ° °2*...
1. 2. 3.3*...
a. b. c.usw...bis man wieder zu der Ausgangsposition ohne Nummerierung kommt.
Kann diesen Befehl irgendwie beeinflussen?
-
Hallo
Hinter dem TRichEdit verbirgt sich das WinAPI-RichEdit. Deshalb kannst du weiterführende Aktionen, die nicht über die VCl-Eigenschaften abgedeckt sind, eventuell über WinAPI-Funktionen ausführen.
bis bald
akari
-
Dieser Thread wurde von Moderator/in akari aus dem Forum VCL/CLX (Borland C++ Builder) in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Okay danke,
habe den passenden Befehl dafür gefunden.
Jetzt habe ich aber folgendes Problem:
Ich möchte das "Numbering" durch ein ButtonEvent abstellen.
Leider stellt er es nur für die aktuelle Zeile und die nachfolgenden ab. Alle anderen Aufzählungen oberhalb der aktuellen Zeile des RichEdit bleiben bestehen.
Kann man es so steuern, dass alle Aufzählungen verschwinden?So sieht mein Event zum Einschalten der Aufzählung aus:
void __fastcall TForm1::numerisch1Click(TObject *Sender) { TParaFormat2 fmt; fmt.cbSize=sizeof(fmt); fmt.dwMask = PFM_NUMBERINGSTART; fmt.wNumberingStart=1; SendMessage(cw->Handle,EM_SETPARAFORMAT, 0,LPARAM(&fmt)); fmt.dwMask = PFM_NUMBERING; fmt.wNumbering = PFN_ARABIC; SendMessage(cw->Handle,EM_SETPARAFORMAT, 0,LPARAM(&fmt)); fmt.dwMask=PFM_NUMBERINGSTYLE; fmt.wNumberingStyle=PFNS_PLAIN; fmt.wNumberingTab=10; SendMessage(cw->Handle,EM_SETPARAFORMAT, 0,LPARAM(&fmt)); fmt.dwMask=PFM_NUMBERINGTAB; fmt.wNumberingTab=350; SendMessage(cw->Handle,EM_SETPARAFORMAT, 0,LPARAM(&fmt)); }Und so zum wieder ausschalten:
void __fastcall TForm1::aus1Click(TObject *Sender) { TParaFormat2 fmt; fmt.cbSize=sizeof(fmt); fmt.dwMask = PFM_NUMBERING; fmt.wNumbering=0; SendMessage(cw->Handle,EM_SETPARAFORMAT, 0,LPARAM(&fmt)); }