code highlighting.

Status
Niet open voor verdere reacties.

Jori13

Gebruiker
Lid geworden
18 jan 2010
Berichten
159
Hallo mensen van Helpmij forum,

Ik ben nu een aantal weken bezig met VB en kan me aardig goed reden, als ik iets niet snap zoek ik het op op internet. Alleen één ding kan ik niet vinden.

Mijn vraag:
Ik heb een code highlighting functie geschreven (als test even voor één woord). Nou wil ik dat dit woord automatisch bijvoorbeeld de kleur blauw krijgt. Ik heb daarvoor het volgende geschreven:

Code:
RichTextInhoud = RichTextBox1.Text
        ExplicitFound = InStr(RichTextInhoud, "Option Explicit")
        If ExplicitFound >= 1 Then
            Do Until ExplicitFound = 0
                Dim RunColor As String = Mid(RichTextInhoud, ExplicitFound, ExplicitFound + 15)
                With RunColor

                End With
                RichTextInhoud = Mid(RichTextInhoud, ExplicitFound + 15, Len(RichTextInhoud))
                ExplicitFound = InStr(RichTextInhoud, "Option Explicit")
            Loop
        End If

Het probleem is alleen dat ik niet weet hoe je voor een bepaalde string (die je met een Mid selecteerd) een apparte kleur kan geven. De functie .ForeColor werkt niet.

Heeft een van jullie een idee hoe ik dit kan oplossen of hoe ik mijn code highlighting functie kan verbeteren, ik hoor het graag.

Alvast bedankt!

Jori.
 
Is ExplicitFound een variable ofzo? Post even de code waar naar gerefereerd wordt (variables, imports, declaraties die niet in je geposte code staan).
 
Laatst bewerkt:
Ik heb een voorbeeldje gemaakt... Zie bijlage:thumb:

P.S. Hij highlight tot 1024 woorden, ik wist niet zo snel hoe je kan weten hoeveel X hetzelfde woord voor komt...
Volgens mij gaat het nog sneller als je eerst alleen in het geheugen, de tekst een kleur toekent; en daarna alle tekst opnieuw laat weergeven...
 
Laatst bewerkt:
Iedereen bedankt voor jullie posts!

Ja, ik wil indererdaad woorden en zinnen "high lighten" maar volgens mij snappen jullie niet precies wat ik bedoel. Ik heb een RichTextBox en in die RichTextBox wil ik dat bij het typen de code en bijvoorbeeld zinnen die beginnen met een ' (weten jullie hoe je zinnen kan filteteren :-)?) van kleur worden veranderd. Ik heb daar een werkende functie voor geschreven maar ik weet niet hoe ik van een "text filtering" in dit geval de variabel RunColor een andere kleur kan maken.

De genoemde functie staat overigens in de volgende sub:

Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan