elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  problema con richtextbox
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: problema con richtextbox  (Leído 7,640 veces)
CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
problema con richtextbox
« en: 21 Enero 2011, 22:18 pm »

bueno mi problema es que estoy tratando de realizar un highlight de determinadas palabras en el richtextbox.
el codigo q cree, funciona, pero solo a medias. dado que por ejemplo si yo tengo q la palabra "#define" debe salir azul, al escribirla, sale azul, pero si yo borro "#" sigue azul. alguna idea de como podria resolver eso? y tambien q titila mientras escribo

aca dejo el codigo:

Código
  1.    Public Sub HighLightText(ByVal Text As RichTextBox)
  2.        Dim oPos As Integer = Text.SelectionStart
  3.        If oPos > 0 Then
  4.            Dim Line As Integer = Text.GetLineFromCharIndex(Text.GetCharIndexFromPosition(Cursor.Position))
  5.            Dim pIni As Integer, pEnd As Integer, pos As Integer, word As String
  6.            pIni = Text.GetFirstCharIndexFromLine(Line)
  7.            pEnd = Text.Lines(Line).Length
  8.            For Each i As String In Words.Keys
  9.                pos = Text.Text.IndexOf(i, pIni, pEnd)
  10.                If ((Char.IsLetter(Chr(pos + 1)) Or Char.IsNumber(Chr(pos + 1))) And Words(i) <> Color.Blue) Or Not Char.IsLetter(Chr(pos + 1)) Then
  11.                    If pos = 0 Then
  12.                        word = i & " "
  13.                    Else
  14.                        word = i
  15.                    End If
  16.                    pos = Text.Text.IndexOf(word, pIni, pEnd)
  17.                    If pos <> -1 Then
  18.                        With Text
  19.                            .SelectionStart = pos
  20.                            .SelectionLength = i.Length
  21.                            If .SelectionColor <> Words(i) Then .SelectionColor = Words(i)
  22.                        End With
  23.                    End If
  24.                End If
  25.            Next
  26.        End If
  27.        Text.SelectionStart = oPos
  28.    End Sub
  29.  

Nota: la funcion es llamada en el callback TextChanged


« Última modificación: 23 Enero 2011, 20:55 pm por CH4ØZ » En línea

no me juzguen si no me conocen
Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: problema con richtextbox
« Respuesta #1 en: 23 Enero 2011, 09:05 am »

Titila cuando escribes, porque tu codigo esta pintando todo el tiempo el texto, deberias crear una funcion que solo pinte cuando encuentre una palabra y si ya esta pintada que no la vuelva a pintar.
Con respecto a tu problema de que sigue pintado al borrar, podrias verificar el color de las palabras que estan cercanas al momento de borrar, sino empiezan con un # le sacas el azul.

Saludos, Sancho.Mazorka    :¬¬


En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
Re: problema con richtextbox
« Respuesta #2 en: 23 Enero 2011, 20:20 pm »

el problema sobre el pintado es q no todas las palabras empiezan con # (N)
En línea

no me juzguen si no me conocen
Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: problema con richtextbox
« Respuesta #3 en: 23 Enero 2011, 20:22 pm »

Y bueno, ya que tu soft esta todo el tiempo pintando, pone que reconozca cuando borras, y si hay palabras de color, que verifique si es una palabra clave. Es lo mas simple que se me ocurre.
De que se trata tu proyecto?

Saludos, Sancho.Mazorka    :¬¬
En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
Re: problema con richtextbox
« Respuesta #4 en: 23 Enero 2011, 20:54 pm »

estoy tratando de crear un editor de pawn (lenguaje para programacion de scripts generalmente de juegos mp como sa-mp cs u otros). resolvi el titileo pero no lo del codigo en color cuando borro.

edit: como puedo saber el color de las palabras si no son parte de la lista q yo tengo usando este metodo?
« Última modificación: 24 Enero 2011, 01:26 am por CH4ØZ » En línea

no me juzguen si no me conocen
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: problema con richtextbox
« Respuesta #5 en: 24 Enero 2011, 02:34 am »

Hola, busca en internet codigos de ejemplos de Syntax highlight tenes miles donde poder ingresar en una lista las palabras reservadas y el color que queres a cada una...

saludos.
En línea

CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
Re: problema con richtextbox
« Respuesta #6 en: 24 Enero 2011, 03:48 am »

seba busque varios pero con ninguno puedo lograr lo que quiero completamente, este codigo fue el resultado de varios adaptado.

el problema es q la syntaxis puede ser:
Código:
if ( var1 != var1 ){
o
Código:
if(var1!=var1){
y no me sale, x eso acudi a ustedes
En línea

no me juzguen si no me conocen
CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
Re: problema con richtextbox
« Respuesta #7 en: 28 Enero 2011, 03:30 am »

perdon x el doble post pero segui buscando segui intentando y no encuentro la forma (N) de resaltar la sintaxis sin ningun bug. debido a q no puedo separar las palabras x " ". alguien me puede dar alguna solucion o ayudarme a encontrar una?
gracias.
En línea

no me juzguen si no me conocen
Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: problema con richtextbox
« Respuesta #8 en: 28 Enero 2011, 03:43 am »

Como dijo Seba, busca Syntax Highlighter en Google, o proba buscando en recursosvisualbasic.net


Saludos, Sancho.Mazorka    :¬¬
En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


CH4ØZ

Desconectado Desconectado

Mensajes: 108



Ver Perfil
Re: problema con richtextbox
« Respuesta #9 en: 28 Enero 2011, 04:21 am »

Como dijo Seba, busca Syntax Highlighter en Google, o proba buscando en recursosvisualbasic.net


Saludos, Sancho.Mazorka    :¬¬

ya busque y ninguno me sirvio ademas de q intente editar varios y tmp funcionaron como necesito. x eso vine a pedir ayuda aca.
En línea

no me juzguen si no me conocen
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
RichTextBox.... problema con imagenes... es coplejo, mejor leeme completo..¿ok?
Programación Visual Basic
SERBice 2 2,077 Último mensaje 2 Octubre 2005, 10:01 am
por SERBice
Richtextbox
Programación Visual Basic
likeu 2 1,835 Último mensaje 4 Octubre 2006, 04:55 am
por Mr.Chispa
Problema al imprimir contenido de un RichTextBox
.NET (C#, VB.NET, ASP)
Zzombi 1 3,540 Último mensaje 10 Agosto 2009, 14:52 pm
por ¨°o.O (ßa¢Kg|姧) O.o°
RichTextBox « 1 2 »
Programación Visual Basic
rembolso 11 5,581 Último mensaje 16 Octubre 2009, 04:43 am
por BlackZeroX
Richtextbox en C# y VB.NET
.NET (C#, VB.NET, ASP)
jgzunigah 2 10,835 Último mensaje 24 Febrero 2010, 13:30 pm
por raul338
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines