2013-04-26 11 views
7

È possibile configurare Multicolor Multiline TMemo in Delphi XE2?.
codici quando scrivo come:Multicolor Multiline TMemo

procedure TForm1.BitBtn1Click(Sender: TObject); 
var 
    FirstVariuble, SecondVarible, ThirdVarible :BOOL; 
begin 
    if FirstVariuble = true then 
    begin 
     Memo1.Font.Color := clGreen; 
     Memo1.Lines.Add('FirstVariuble = True'); 
    end 
    else if SecondVarible = true then 
    begin 
     Memo1.Font.Color := clBlue; 
     Memo1.Lines.Add('SecondVarible = True'); 
    end 
    else 
    begin 
     Memo1.Font.Color := clRed; 
     Memo1.Lines.Add('ThirdVarible = True'); 
    end; 
end; 

colore per tutte le linee già esistenti di carattere sono sempre modificati in base alle condizioni delle variabili.

+0

Rimuovere "= true". –

risposta

18

No, non è possibile. Tuttavia, puoi utilizzare invece un controllo RICHEDIT, ad esempio il wrapper TRichEdit.

RichEdit1.SelAttributes.Color := clGreen; 
RichEdit1.Lines.Add('First line.'); 

RichEdit1.SelAttributes.Color := clBlue; 
RichEdit1.Lines.Add('Second line.'); 

RichEdit1.SelAttributes.Color := clRed; 
RichEdit1.Lines.Add('Third line.'); 
+0

Penso che tecnicamente sia possibile (non ho provato) facendo disegno diretto sulla tela. Comunque è molto più del necessario, per questo è necessario un edit completo. –