Technician Geschrieben 27. Februar 2002 Geschrieben 27. Februar 2002 Hi! wie kann ich die Textfarbe in einer RTF-Box festlegen? RichTextBox1.SelColor = RGB(255, 100, 54) is nicht so das wahre, weil manda zuerst Text auswählen muss. Die Textbox in meinem PRogramm ist aber zuerst leer und wenn der User dann was eintippt, soll der Text gleich eingefärbt werden. die RTF-Box hat ja nur ne Backcolor-Eigenschaft, aber leider keine ForeColor... Kann mir da jemand helfen??? Gruß, Technician Zitieren
MarcG Geschrieben 27. Februar 2002 Geschrieben 27. Februar 2002 Die RichEditbox hat eine Eigenschaft TCustomRichEdit.DefAttributes diese sind TTextAttributes mit denen du CharSet Color ConsistentAttributes Height Name Pitch Protected Size Style ändern kannst. DefAttributes sind nnur zur Laufzeit verfügbar. Markierten Text kannst du mit SelAttributes verändern. Näheres in der Hilfe Zitieren
Technician Geschrieben 27. Februar 2002 Autor Geschrieben 27. Februar 2002 Original geschrieben von MarcG Die RichEditbox hat eine Eigenschaft TCustomRichEdit.DefAttributes Näheres in der Hilfe Hallo Marc, wo finde ich die RichEditbox? Mir ist nur die RichTextBox ein Begriff! In der Hilfe habe ich auch nix dazu gefunden... Ich beziehe mich auf VB6 (sorry, hab vergessen das dazuzuschreiben). Gruß, Technician Zitieren
MarcG Geschrieben 27. Februar 2002 Geschrieben 27. Februar 2002 Ich beziehe mich auf Delphi, hab ich auch vergessen dazuzuschreiben, also denke ich, dass es sich um dasselbe handelt, da die Delphi RTF Box auch auf die Windows RTF Funktionalität zurückgreift (AFAIK) Zitieren
Ferris Geschrieben 28. Februar 2002 Geschrieben 28. Februar 2002 Hallo Technicican, das Ganze ist ein bischen hakelig, da Du erst den Text markieren musst, um ihn zu verändern. Dazu hast Du eine Art Cursor oder Pointer. Hier ist mal eine Prozedur, mit der Ich Textzeilen in ein Richtext-Feld geschrieben und formatiert habe. Lässt sich z.B. auch als Logbuch verwenden. Ausser Dicke und Farbe kannst Du noch andere Formatierungen vornehmen. Einfach mal die MSDN checken. Private Sub WriteLog(sLine As String, iModus As Integer, iBold As Integer) Dim lpos As Long On Error Resume Next lpos = rtbLog.SelStart rtbLog.SelLength = Len(sLine) + 2 rtbLog.SelText = sLine & Chr(13) & Chr(10) rtbLog.SelStart = lpos rtbLog.SelLength = Len(sLine) + 2 Select Case iModus Case 0 rtbLog.SelColor = RGB(0, 0, 0) Case 1 rtbLog.SelColor = RGB(255, 0, 0) End Select Select Case iBold Case 0 rtbLog.SelBold = False Case 1 rtbLog.SelBold = True End Select rtbLog.SelStart = Len(sLine) + lpos + 2 End Sub Gruss Ferris Zitieren
Technician Geschrieben 1. März 2002 Autor Geschrieben 1. März 2002 Original geschrieben von Ferris Hallo Technicican, das Ganze ist ein bischen hakelig, da Du erst den Text markieren musst, um ihn zu verändern. Dazu hast Du eine Art Cursor oder Pointer. Hier ist mal eine Prozedur, mit der Ich Textzeilen in ein Richtext-Feld geschrieben und formatiert habe. Lässt sich z.B. auch als Logbuch verwenden. Ausser Dicke und Farbe kannst Du noch andere Formatierungen vornehmen. Einfach mal die MSDN checken. Thank you very much Gruß, Technician Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.