2016-08-27 6 views
1

Ich habe Array von Zeichenfolgen und ich möchte eine leere Zeile von geringerer Größe zwischen einigen von ihnen hinzufügen. So habe ich einen Code:TRichEdit - Wie füge ich eine leere Zeile mit Größenänderung hinzu?

const _n=#13#10; 
    //... 
    r1.Lines.Clear; 
    r1.SelAttributes.Size:=18; 
    r1.SelText:='TEST'; 
    r1.SelAttributes.Size:=6; 
    r1.SelText:=_n+'............'; 
    r1.SelAttributes.Size:=18; 
    r1.SelText:=_n+'test1'; 
    r1.SelAttributes.Size:=6; 
    r1.SelText:=_n+' '; 
    r1.SelAttributes.Size:=18; 
    r1.SelText:=_n+'test2'; 

und Größenänderungsarbeiten für die erste Zeile (mit Punkten), aber Linie zwischen test1 und test2 hat dieselbe Größe wie sie (18) irgendwie = \

Irgendwelche Vorschläge?

Antwort

0

Ich habe eine Workaround gefunden: es ist möglich, Tab-Symbol anstelle von Leerzeichen zu verwenden.

So ist der folgende Code funktioniert gut:

r1.SelAttributes.Size:=18; 
    r1.SelText:=_n+'test1'; 
    r1.SelAttributes.Size:=6; 
    r1.SelText:=_n+#9; // <- tab here 
    r1.SelAttributes.Size:=18; 
    r1.SelText:=_n+'test2'; 
0

Statt Leerzeilen einzufügen Sie den Zeilenabstand der einzelnen Linien Nachrichten durch das Senden EM_SETPARAFORMAT zum Richedit ändern könnte. Sehen Sie diese Frage

How to decrease line space of tRichEdit

für ein Beispiel. Um den Zeilenabstand zu erhöhen, ändern Sie den Wert von "Para.dyLineSpacing". Verwenden Sie "500", um eine Vorstellung von dem Effekt zu erhalten.

+0

Nun, ich sehe nicht, wie es auf einzelne Zeilen angewendet werden könnte, und wie auch immer ich sagte, ich habe einen Workaround mit Tab-Symbol gefunden. –

Verwandte Themen