Newsgroup: it.comp.lang.visual-basic
Titolo: formattazione condizionata

Vorrei che scrvendo una determinata parola, questa si colorasse di un'altro
colore, ad es. rosso. coem poss fare?
si potrebbe fare con una richtextbox e con selcolor, ma come?

 ha scritto nel
messaggio news:T3bUa.203448$lK4.5...@twister1.libero.it...

Private Sub RichTextBox1_Change()
    Dim OldPos As Integer
    Dim i As Integer
    OldPos = Me.RichTextBox1.SelStart
    Me.RichTextBox1.SelStart = 0
    Me.RichTextBox1.SelLength = Len(Me.RichTextBox1.Text)
    Me.RichTextBox1.SelColor = RGB(0, 0, 0)
    Me.RichTextBox1.SelStart = OldPos
    i = InStr(1, Me.RichTextBox1.Text, "ciao")
        While i > 0
            Me.RichTextBox1.SelStart = i - 1
            Me.RichTextBox1.SelLength = Len("ciao")
            Me.RichTextBox1.SelColor = RGB(255, 0, 0)
            i = InStr(i + 1, Me.RichTextBox1.Text, "ciao")
        Wend
    Me.RichTextBox1.SelStart = OldPos
End Sub
forse un po' lentuccio ma funziona
--
Ciao
Alfredo
Vb6+Sp5+Win2k

 ha scritto nel
messaggio news:T3bUa.203448$lK4.5...@twister1.libero.it...

Ciao
Prova ste 4 righe e vedi se ti serve
Ti crei un form e ci metti una textbox chiamandola Text1, nell'evento Change
metti il codice come sotto
nel momento in cui completi la parola PIPPO il testo diventa rosso,
ovviamente il colore cambia solo se all'interno
della textbox c'č solo il testo PIPPO
Private Sub Text1_Change()
    If Text1.Text = "PIPPO" Then
        Text1.ForeColor = &HFF&
    End If
End Sub

ci sono 2 strade... e secondo me č meglo che utilizzi una
textbox-..
scrivi
if textbox1.text="tua parola" then
   textbox1.forecolor= &H000000FF& (per il rosso)
nell'evento change o lostfocus del tuo textbox, scegli tu in quale evento
collocarlo a seconda delle tue esigenze..

oppure come ha giustamente suggerito il nostro alfredo
textbox1.forecolor=RGB(255,0,0) per i lrosso


si, infatti per come ho inteso io la domanda:
č che mentre si scrive un testo, se digito una parola. non se il mio testo č
una parola..
--
Ciao
Alfredo
Vb6+Sp5+Win2k

 ha scritto nel messaggio
news:wwcUa.203392$Ny5.5...@twister2.libero.it...

č cosě

 ha scritto nel messaggio
news:enbUa.203234$Ny5.5...@twister2.libero.it...

e se vorrei impostare più criteri? tipo se è ciao verde, se hello rosso?
grazie ancora

select case UCASE(textbox1.text)
case "CIAO"
   textbox1.forecolor=RGB(0,255,255) 'verde
case "HELLO"
   textbox1.forecolor=RGB(255,0,0)
end select
inserisci questo codice nell'evento che desideri.
ho scritto UCASE() perchè in questo modo non eviti il case-sensitive.
con le dovute modifiche funziona anche con il richtextbox
ciao.

 ha scritto nel messaggio
news:RhtUa.25586$sj6.5...@tornado.fastwebnet.it...

non mi hai capito
io volevo dire che mentre scrivo, se scrivo una determinata parola, questa
diventa di un altro colore e non che tutta l richtextbox diventa di quel
colore mi spiego:
(verde) ciao (fine verde) sono (rosso)robiweb90(rosso)
spero di essermi spiegato.
(vi svelo il mio segreto: sto cercando di costruire un editor HTML testuale.
è tutto pronto tranne il particolare dell'evidenziamento del codice)

 (verde) ciao (fine verde) sono (rosso)robiweb90(rosso)
Devi lavorare sulla proprietà TextRTF, sostituire cioè "ciao" con
"{rosso}ciao{/rosso}"
RTF si comporta in modo simile ad HTML, salva un documento con word e
studiatelo col blocco note.

 Devi lavorare sulla proprietà TextRTF, sostituire cioè "ciao" con
Naturalmente se lo fai ad ogni Changed la cosa porta via parecchio tempo: ti
conviene colorare riga per riga, alla pressione di <invio>.
Ma questo non è affar mio...

 ha scritto nel
messaggio news:dOzUa.18370$Df5.5...@news1.tin.it...

ma come faccio a fare così mentre scrivo. potresti postarmi un'esempio?

 del codice)
ci so passato proprio ieri sera ...
http://www.unicode.it/Activex/ucColor.asp
 e' quello che ti serve
-- 
<Gigio2K>
Sito Comune
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/

> ma come faccio a fare così mentre scrivo. potresti postarmi un'esempio?
Gestisci l'evento Change() del RichTextBox.

 ha scritto
nel
| | messaggio news:T3bUa.203448$lK4.5...@twister1.libero.it...
| | > Vorrei che scrvendo una determinata parola, questa si colorasse di
| | un'altro
| | > colore, ad es. rosso. coem poss fare?
| | > si potrebbe fare con una richtextbox e con selcolor, ma come?
| | >
| |
| |
| | Private Sub RichTextBox1_Change()
| |     Dim OldPos As Integer
| |     Dim i As Integer
| |     OldPos = Me.RichTextBox1.SelStart
| |     Me.RichTextBox1.SelStart = 0
| |     Me.RichTextBox1.SelLength = Len(Me.RichTextBox1.Text)
| |     Me.RichTextBox1.SelColor = RGB(0, 0, 0)
| |     Me.RichTextBox1.SelStart = OldPos
| |     i = InStr(1, Me.RichTextBox1.Text, "ciao")
| |         While i > 0
| |             Me.RichTextBox1.SelStart = i - 1
| |             Me.RichTextBox1.SelLength = Len("ciao")
| |             Me.RichTextBox1.SelColor = RGB(255, 0, 0)
| |             i = InStr(i + 1, Me.RichTextBox1.Text, "ciao")
| |         Wend
| |     Me.RichTextBox1.SelStart = OldPos
| | End Sub
| |
| |
| |
| e se vorrei impostare piů criteri? tipo se č ciao verde, se hello rosso?
| grazie ancora
risolto grazie
100000000000000000000000000!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!

 ha scritto nel messaggio
news:F0EUa.206411$lK4.5...@twister1.libero.it...
| *(¯`·.¸ robiweb90¸.·´¯)* ci ha deliziati con queste righe
|
|  Quote:
| > (vi svelo il mio segreto: sto cercando di costruire un editor HTML
| > testuale. è tutto pronto tranne il particolare dell'evidenziamento
| > del codice)
|
| ci so passato proprio ieri sera ...
| 
http://www.unicode.it/Activex/ucColor.asp
 e' quello che ti serve
|
ma è a pagamento questa dll?


ok, di niente
--
Ciao
Alfredo
Vb6+Sp5+Win2k