Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Source Codes
Autor
Nachricht
Maloki
Newbie
Newbie

Anmeldedatum: 04.01.2010
Beiträge: 8

Textverarbeitung - Bold, Italic, Underline ...
Verfasst am: 08.01.2010, 11:19

Ich selbst musste eine ganze Weile im Web suchen, bis ich endlich mal Beispielcode für Bold-, Italic-, Underline- und Strikeout-Texteffekte gefunden habe. Darum werde ichhier mal die Codes posten, die man in VB.NET dazu verwendet. Wichtig! Textformatierung funktioniert nur in Richtextboxen.

Also, folgender Code ändert den gesamten Text um:
Bold (fett):
Code:

RichTextBox1.Font = New Font(RichTextBox1.Font, FontStyle.Bold)

Die zweite Angabe, also FontStyle, ist ausschlaggebend. FontStyle.Bold ergibt fett formatierten Text. Mit FontStyle.Italic erhalten wir kursiven Text; Und hier die anderen Angaben:
Unterstrichen: .Underline
Durchgestrichen: .Strikeout
kein Design: .Regular

Aber folgendes "Problem" tritt auf: ist der Text beispielweise gerade kursiv formatiert, und wir wählen unterstrichen aus, so wird der Text unterstrichen, ist allerdings nicht mehr kursiv. Lösung:
Bold (fett):
Code:

RichTextBox1.Font = New Font(RichTextBox1.Font, RichTextBox1.Font.Style + FontStyle.Bold)

So weit, so gut.

Neues Problem bzw. neue Bedingung: nur markierter Text soll formatiert werden. Lösung:
Code:

RichTextBox1.SelectionFont = New Font(RichTextBox1.SelectionFont, RichTextBox1.SelectionFont.Style + FontStyle.Bold)

Statt Font einfach SelectionFont. Bei Versuchen wie .SelectedText.Font kann man nur scheitern, in VB.NET kan nman markierten Text somit sehr einfach bearbeiten.

So, jetzt machen wir mal folgendes: Wenn Text markiert ist, soll er formatiert werden, wenn kein Text markiert ist, wird alles formatiert.
Code:

if(RichTextBox1.SelectedText = Nothing) Then
RichTextBox1.Font = New Font(RichTextBox1.Font, RichTextBox1.Font.Style + FontStyle.Bold)
else
RichTextBox1.SelectionFont = New Font(RichTextBox1.SelectionFont, RichTextBox1.SelectionFont.Style + FontStyle.Bold)
end if


Was noch zu beachten ist:

    im Rich-Text-Format (*.rtf) speichern
    zum Speichern RichTextBox1.SaveFile(SaveDialog1.FileName, RichTextBoxStreamType.RichText) verwenden


Ich hoffe, dass es weiterhilft, falls jemand mal einen Texteditor proggen will!
_________________
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Source Codes

Tags: bold, text, underline, fett

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Frage über mein game 163 25.09.2011, 16:33
Keine neuen Beiträge Wie bringe ich mein Programm dazu, auf Return zu reagieren? 581 24.12.2009, 14:42
Keine neuen Beiträge [Probleme]Hoffe Auf schnelle Antwort 399 16.07.2009, 21:08
Keine neuen Beiträge Nicht der ganze Queltext?? Warum 798 10.03.2009, 11:32
Keine neuen Beiträge "Schließen"-drücken und das ganze Programm beenden 926 16.11.2007, 13:47
 



[ Time: 0.1354s ][ Queries: 81 (0.0244s) ][ GZIP on - Debug on ]