Toon posts:

VB6, kleur aanpassen

Pagina: 1
Acties:
  • 104 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig met een programma, en wil dat als er in een rtfTextBox een zin wordt getypt, een bepaald woord automatisch van kleur veranderd, zoals in sommige HTML Editors e.d. Weet iemand welke code ik hiervoor moet gebruiken, of heeft iemand misschien een voorbeeld? Ik werk overigens met VB 6...

Groeten,
AapAap :)

  • DUX
  • Registratie: September 2002
  • Laatst online: 00:47

DUX

blijft ook nu voor Oranje

Ik heb een beetje twijfels bij jouw thread. Aan de ene kant wil ik je best helpen (ben zelf ook wel nieuwsgierig naar het anwoord op deze kwestie), maar aan de andere kant is het maken van de kleurcodering eigenlijk het maken van het hele programma zelf. De kleurcodering is juist een van de key features dat mensen zou overhalen om jouw programma te schrijven, anders kan men net zo goed kladblok gebruiken, nietwaar? Dus om hier nou vervolgens de code hiervan op te zoeken en hier neer te zetten lijkt me niet zo'n goed plan.

Daarnaast had ik graag gezien wat je nou allemaal zelf al geprobeerd had, met welke code kom je er niet uit? Want er blijkt nergens uit dat je al iets geprobeerd hebt.

Indien je toegang hebt tot de offline MSDN (de bijbel :) ), dan raad ik je aan die te doorzoeken: ik weet zeker dat je daarmee uit de voeten kunt (al zullen niet alle antwoorden die je nodig hebt hiervoor op dezelfde plek staan). Je hebt niet de MSDN thuis? Kijk dan op de online MSDN (en klik hier voor de link naar de RichTextboxControl)waar eigenlijk hetzelfde (en waarschijnlijk nog meer en uitgebreider) beschreven staat. Persoonlijk vind ik alleen de offline versie (die's in de vorm van een MS Help-bestand) prettiger werken.

Good luck!

[ Voor 6% gewijzigd door DUX op 19-05-2003 17:35 . Reden: extra link toegevoegd ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
DUX schreef op 19 mei 2003 @ 17:32:
Ik heb een beetje twijfels bij jouw thread. Aan de ene kant wil ik je best helpen (ben zelf ook wel nieuwsgierig naar het anwoord op deze kwestie), maar aan de andere kant is het maken van de kleurcodering eigenlijk het maken van het hele programma zelf. De kleurcodering is juist een van de key features dat mensen zou overhalen om jouw programma te schrijven, anders kan men net zo goed kladblok gebruiken, nietwaar? Dus om hier nou vervolgens de code hiervan op te zoeken en hier neer te zetten lijkt me niet zo'n goed plan.
<knip>
Het is echt geen geheim hoe je tekst van kleur kunt laten veranderen in een RTF box. Wat een onzin om het om die reden niet te willen vertellen.

Hoewel de start-post nogal karig is (idd wordt er niet vermeldt wat er al is geprobeerd e.d.) ben ik wel van mening dat deze post best beantwoord mag worden.

Visual Basic:
1
2
3
    RichTextBox1.SelStart = 5
    RichTextBox1.SelLength = 5
    RichTextBox1.SelColor = vbRed


Wat dacht je daar van? Maakt vanaf het 5e karakter 5 karakters rood.

@DUX: Dus als ik vraag hoe ik tekst in mijn textbox krijg zodat ik een default waarde heb, vertel je me dat niet omdat andere programma's dat ook doen? Echt flauwekul. Als je het niet weet, zeg dan niks :|

Laat ook maar... * RobIII laat zich weer op de kast jagen ;)

[edit]
En met deze code markeer je meerdere woorden in de hele tekst (effe snel getest, weet niet of het 100% altijd werkt... en het kán mooier >:) )

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Option Explicit

Private Sub Form_Load()
    MarkWords RichTextBox1, "test", vbBlue
    MarkWords RichTextBox1, "bla", vbRed
    MarkWords RichTextBox1, "woord"
End Sub


Private Sub MarkWords(oRTFBox As RichTextBox, sWord As String, Optional cColor As ColorConstants)
    Dim T As Long
    Dim P As Long
    
    T = 1
    P = InStr(T, oRTFBox.Text, sWord, vbTextCompare)
    While P > 0
        oRTFBox.SelStart = P - 1
        oRTFBox.SelLength = Len(sWord)
        oRTFBox.SelColor = cColor
        T = P + 1
        P = InStr(T, oRTFBox.Text, sWord)
    Wend
End Sub

[ Voor 48% gewijzigd door RobIII op 19-05-2003 17:51 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • DUX
  • Registratie: September 2002
  • Laatst online: 00:47

DUX

blijft ook nu voor Oranje

:)

Het is echt niet mijn bedoeling om iemand in het harnas te jagen, maar ik bedoelde min of meer te zeggen dat als jij de complete code hier zou zetten om een gezocht woord te laten veranderen in kleur, er nog weinig programmeren voor AapAap over is, en dat jij eigenlijk het grootste probleem/functie van het programma hebt geschreven. Dan is het meer een quick-n-dirty scriptrequest en niet een roep om hulp omdat zijn code niet werkt.

Natuurlijk is het geen geheim hoe je een kleurtje kunt wijzigen in die control, en ik vind jouw tip voor AapAap echt heel goed om hem een beetje op weg te krijgen (jammer dat ik zelf niet heb gedaan), maar ik ga niet zijn complete programma hier zetten. Voor hulp daarentegen ben ik altijd beschikbaar.

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
DUX schreef op 19 May 2003 @ 17:46:
:)

Het is echt niet mijn bedoeling om iemand in het harnas te jagen, maar ik bedoelde min of meer te zeggen dat als jij de complete code hier zou zetten om een gezocht woord te laten veranderen in kleur, er nog weinig programmeren voor AapAap over is, en dat jij eigenlijk het grootste probleem/functie van het programma hebt geschreven. Dan is het meer een quick-n-dirty scriptrequest en niet een roep om hulp omdat zijn code niet werkt.

Natuurlijk is het geen geheim hoe je een kleurtje kunt wijzigen in die control, en ik vind jouw tip voor AapAap echt heel goed om hem een beetje op weg te krijgen (jammer dat ik zelf niet heb gedaan), maar ik ga niet zijn complete programma hier zetten. Voor hulp daarentegen ben ik altijd beschikbaar.
Dan ben je vast niet blij met mijn edit ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • DUX
  • Registratie: September 2002
  • Laatst online: 00:47

DUX

blijft ook nu voor Oranje

RobIII schreef op 19 May 2003 @ 17:47:
Dan ben je vast niet blij met mijn edit ;)
Niet blij? Tuurlijk wel, vind het tof van je dat jij wel helpt en AapAap zal er ook heel blij mee zijn :>

Nogmaals, als je mijn hulp kunt gebruiken dan ben ik best bereid daartoe mijn kunsten in praktijk te brengen, maar dan zie ik wel graag een betere starttopic ;)

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


  • cablepokerface
  • Registratie: Januari 2001
  • Laatst online: 29-01 16:53
Het is echt niet mijn bedoeling om iemand in het harnas te jagen, maar ik bedoelde min of meer te zeggen dat als jij de complete code hier zou zetten om een gezocht woord te laten veranderen in kleur, er nog weinig programmeren voor AapAap over is, en dat jij eigenlijk het grootste probleem/functie van het programma hebt geschreven. Dan is het meer een quick-n-dirty scriptrequest en niet een roep om hulp omdat zijn code niet werkt.

Natuurlijk is het geen geheim hoe je een kleurtje kunt wijzigen in die control, en ik vind jouw tip voor AapAap echt heel goed om hem een beetje op weg te krijgen (jammer dat ik zelf niet heb gedaan), maar ik ga niet zijn complete programma hier zetten. Voor hulp daarentegen ben ik altijd beschikbaar
Joh, waar heb je het nu in hemelsnaam allemaal over ?? Als je niet van plan bent het antwoord te plaatsen, houd dan gewoon je mond. En hoezo 'er is nog weinig programmeren over' ?? Ben jij de vader van AapAap ofzo ... ?

Hij mag iedere lullige vraag stellen die hij wil, en dan is het maar hopen voor hem dat er antwoord op komt.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
cablepokerface schreef op 19 May 2003 @ 17:51:
[...]


Joh, waar heb je het nu in hemelsnaam allemaal over ?? Als je niet van plan bent het antwoord te plaatsen, houd dan gewoon je mond. En hoezo 'er is nog weinig programmeren over' ?? Ben jij de vader van AapAap ofzo ... ?

Hij mag iedere lullige vraag stellen die hij wil, en dan is het maar hopen voor hem dat er antwoord op komt.
...<zucht> we waren er al uit hoor.... :| Natrappen is niet nodig...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
mja, dat kleur-aanpassen is slechts een gedeelt evan een programma. Die bovenste 3 regels werken wel, maar die daaronder niet. Ik ga zometeen ff naar die link van dat MSDN library, hopelijk vindt ik daar meer :)

  • cablepokerface
  • Registratie: Januari 2001
  • Laatst online: 29-01 16:53
Natrappen ? nodeloos gezwets over een beginpost die prima helder is. En het dan allemaal zoooo serieus opvatten ... no flame intended hoor ...

Maaruh...
Nogmaals, als je mijn hulp kunt gebruiken dan ben ik best bereid daartoe mijn kunsten in praktijk te brengen, maar dan zie ik wel graag een betere starttopic
Hier moest ik wel op reageren.

  • lexited
  • Registratie: Maart 2001
  • Laatst online: 29-06 09:18
om ook ff een duit in het zakje te doen, volgens mij vraagt hij terwijl je typt, en niet achteraf, wat de gestelde voorbeelden doen.
in mijn ogen is dan een on key press event de aanleiding om te checken wat er getypt wordt, en of dat ge-highlight moet worden

1 - 2 - 3


  • DUX
  • Registratie: September 2002
  • Laatst online: 00:47

DUX

blijft ook nu voor Oranje

lexited schreef op 19 May 2003 @ 17:57:
om ook ff een duit in het zakje te doen, volgens mij vraagt hij terwijl je typt, en niet achteraf, wat de gestelde voorbeelden doen.
in mijn ogen is dan een on key press event de aanleiding om te checken wat er getypt wordt, en of dat ge-highlight moet worden
Kun je niet beter een RichTextBox_Change doen? Stel nou dat hij een stuk code erin copy/paste, dan zou dat met KeyPress Event niet gecontroleerd worden.

[ Voor 2% gewijzigd door DUX op 19-05-2003 18:01 . Reden: KeyPress, niet KeyDown ]

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Mijn geposte code werkt wel degelijk, als je copy-paste en het werkt niet, dan doe je ergens iets niet goed. Weet je zeker dat je de juiste RTFBox als parameter meegeeft? En de juiste woorden?

En natuurlijk moet je de code nog aanpassen zodat 'ie tijdens het typen werkt, maar ook dat is niet erg moeilijk. Kijk bij een onkeypress/onchange of de toets een spatie, tab, leesteken of enter is. Zo ja, dan begint er dus een nieuw woord/zin. Kijk dan of het laatst getypte woord ("terugkijken" tot de eerstvolgende spatie) in je lijstje met "gekleurde woorden" voorkomt, en zo ja kleur het woord.

Veel makkelijker ga zelfs ik het niet maken ;)

[ Voor 8% gewijzigd door RobIII op 19-05-2003 18:02 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • lexited
  • Registratie: Maart 2001
  • Laatst online: 29-06 09:18
DUX, je hebt helemaal gelijk !
Die keuze is voor aapaap..
en met RobIII zijn code heeft hij al het meeste.

[ Voor 36% gewijzigd door lexited op 19-05-2003 18:09 ]

1 - 2 - 3


Verwijderd

Topicstarter
Die code werkt wel (die lange), alleen gebeurt er niks:s?

  • NetForce1
  • Registratie: November 2001
  • Laatst online: 22-08 23:21

NetForce1

(inspiratie == 0) -> true

Die code werkt wel (die lange), alleen gebeurt er niks:s?
Zou er wat moeten gebeuren dan, en zoja wanneer? De debug-functie van VB zou hier uitkomst kunnen bieden. Misschien is het ook handig om te vermelden wat je zelf geprobeerd hebt om te zorgen dat het wel werkt.

NOFI, maar het lijkt mij handig dat je je eerst nog even verdiept in de basis van VB.

De wereld ligt aan je voeten. Je moet alleen diep genoeg willen bukken...
"Wie geen fouten maakt maakt meestal niets!"


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Op planetsourcecode effe zoeken en er is zat code om van te leren ;)

Deze...
deze...
deze...
...en deze...

...en wat voorbeelden van wat je bedoelt:

Afbeeldingslocatie: http://www.planetsourcecode.com/upload/ScreenShots/PIC200111261223101899.gif

Afbeeldingslocatie: http://www.planetsourcecode.com/upload/ScreenShots/PIC20011013114347291.gif

Afbeeldingslocatie: http://www.planetsourcecode.com/upload/ScreenShots/PIC200110272151303832.gif

Afbeeldingslocatie: http://www.planetsourcecode.com/upload/screenshots/PIC2000341151243387.gif

Afbeeldingslocatie: http://www.planetsourcecode.com/upload/ScreenShots/PIC2001861729189872.jpg

[ Voor 22% gewijzigd door RobIII op 20-05-2003 00:32 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1