Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Ερώτηση πάνω σε RitchTextBox [VB.NET 2010]

Îåêßíçóå áðü ôï ìÝëïò AlKiS. Τελευταία δημοσίευση από το μέλος AlKiS στις 27-01-2012, 12:43. Υπάρχουν 2 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  22-01-2012, 08:58 68978

    Ερώτηση πάνω σε RitchTextBox [VB.NET 2010]

    Καλησπέρα,

    Έχω λοιπών ένα RitchTextBox, και θέλω να χρωματίσω πάνω του τη λέξη "Insignificant" (όταν υπάρχει) με κόκκινο χρώμα,

    ενώ τη λέξη "Significant" θέλω να την υπογραμμίζω.

    έγραψα λοιπών τον παρακάτω κώδικα:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
        Private Sub rtbIntermediate_TextChanged(sender As System.Object, e As System.EventArgs) Handles rtbIntermediate.TextChanged
            Dim SelStart As Integer = -1
    
            If rtbIntermediate.Text <> "" Then
                mniExportIntermediate.Enabled = True
    
                SelStart = rtbIntermediate.Find(txtLanguage.Lines(87))
                If SelStart <> -1 Then
                    rtbIntermediate.SelectionStart = SelStart
                    rtbIntermediate.SelectionFont = New Font(rtbIntermediate.Font, FontStyle.Underline)
                End If
    
                SelStart = rtbIntermediate.Find(txtLanguage.Lines(88))
                If SelStart <> -1 Then
                    rtbIntermediate.SelectionStart = SelStart
                    rtbIntermediate.SelectionColor = Color.Red
                End If
    
            Else
                mniExportIntermediate.Enabled = False
            End If
        End Sub

    Και πράγματι μου ζωγραφίζει τις λέξεις (όταν υπάρχουν), αλλά ΜΟΝΟ την πρώτη φορά που εμφανίζονται!

    Η λέξεις αυτές υπάρχουν 4 φορές μέσα στο κείμενο - δλδ ή θα είναι 4 "Significαnt" ή 4 "Insignificant" ή οποιοσδήποτε συνδυασμός τους... πως μπορώ να τα χρωματίζω όλα??


  •  23-01-2012, 10:57 68991 σε απάντηση της 68978

    Απ: Ερώτηση πάνω σε RitchTextBox [VB.NET 2010]

    H Find μπορεί να κληθεί ορίζοντας της (στο start)  από ποιο χαρακτήρα και μετά να ψάξει.

    public int Find(string str, int start, RichTextBoxFinds options);
      
                    RichTextBox rtb = new RichTextBox();
                    int selStart = 0;
                    while((selStart = rtb.Find("Singnificant", selStart, RichTextBoxFinds.None)) > -1)
                    {
                        rtb.SelectionStart = selStart;
                        .......
                        selStart++;
                    }

    Κάθε φορά ψάχνει από μια θέση μεγαλύτερη από αυτήν που βρήκε τη λέξη.
    Είναι σε C# αλλά πιστεύω δε θα έχει πολύ διαφορά σε VB.NET. 
  •  27-01-2012, 12:43 69031 σε απάντηση της 68991

    Απ: Ερώτηση πάνω σε RitchTextBox [VB.NET 2010]

    Ναι, δούλεψε ^^


    Σε ευχαριστώ πολύ φίλε μου :)


Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems