texteditor schriftgröße

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    texteditor schriftgröße

    Hallo,

    Ich bin dabei einen texteditor zu proggn. doch bei der schriftgröße gibs ein problem.

    Ich benutze eine Combobox um die größe zu ändern

    VB.NET-Quellcode

    1. Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    2. Dim Sizee As Integer = ComboBox1.Text
    3. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, Sizee, RichTextBox1.Font.Style)
    4. RichTextBox1.Focus()
    5. End Sub


    und zum anzeigen benutze ich das hier

    VB.NET-Quellcode

    1. Private Sub RichTextBox1_SelectionChanged(sender As Object, e As EventArgs) Handles RichTextBox1.SelectionChanged
    2. ComboBox1.Text = RichTextBox1.SelectionFont.Size
    3. End Sub


    Doch steht das in konflikt mit dem Combobox Selected index Chanched, weil sobald ein text ausgewählt wird wo zwei verschiedene schriftgrößen sind werden beide zu den jeweils kleineren veränderd... wie mache ich es dass wenn 2 schriftgrößen ausgewählt werden die Combobox dann leer ist und die größe nicht verändert wird???



    Und die zweite frage ist ich benutze einen button um die größe zu erhöhen und einen um sie zu vergeringern:

    VB.NET-Quellcode

    1. Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click
    2. Dim Sizee As Integer = RichTextBox1.SelectionFont.Size + 1
    3. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, Sizee, RichTextBox1.Font.Style)
    4. RichTextBox1.Focus()
    5. End Sub


    und

    VB.NET-Quellcode

    1. Private Sub Label3_Click(sender As Object, e As EventArgs) Handles Label3.Click
    2. Dim Sizee As Integer = RichTextBox1.SelectionFont.Size -1
    3. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, Sizee, RichTextBox1.Font.Style)
    4. RichTextBox1.Focus()
    5. End Sub


    doch wie oben beschrieben lässt sich wenn der selektierte text 2 größen beinhaltet nur die jeweils größere sich vergößern und die kleinere wird in die gleiche größe gesetzt wie die größere... wie also kann ich die verschiedenen größen seperat vergößern bzw verkleinern?


    und offtopic:
    Mit der textkonvertierung ist das gleiche problem, beispiel um den text fett zu machen benutze ich:

    VB.NET-Quellcode

    1. If RichTextBox1.SelectionFont.Style <> FontStyle.Bold Then
    2. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, RichTextBox1.Font.Size, FontStyle.Bold)
    3. RichTextBox1.Focus()
    4. Else
    5. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, RichTextBox1.Font.Size, FontStyle.Regular)
    6. RichTextBox1.Focus()
    7. End If


    endhält der text eine andere konvertierung beispielweise unterstrichen wird diese aufgehöben und dirch fett ersetzt, wie verhindere ich dass, also dass der text die alte konvertieung beibehält und die neue also unterstrichen und fett... und dass auch wieder wenn der text verschiedene konvertierungen endhält...



    danke schonmal im vorraus :D
    Es muss natürlich bei der RichTextBox Text markiert sein, auf den das angewendet wird. :D
    Dies genügt:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim Size As Single = CSng(NumericUpDown1.Value)
    3. RichTextBox1.SelectionFont = New Font(RichTextBox1.Font.Name, Size, RichTextBox1.Font.Style)
    4. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    leonkurt1 schrieb:

    wo soll ich dies einfügen?

    An der Stelle, wo Du gern die Schriftgröße ändern möchtest.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    leonkurt1 schrieb:

    das ist in c#
    Probier mal den hier.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!