Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Richtexbox

Estas en el tema de Richtexbox en el foro de Visual Basic clásico en Foros del Web. Hola GEnte, tengo un pequeño probema, haber si alguien me puede ayudar Yo tegno en un richtebox un contrato "modelo" el cual dice algo asi ...
  #1 (permalink)  
Antiguo 10/09/2010, 20:43
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Richtexbox

Hola GEnte, tengo un pequeño probema, haber si alguien me puede ayudar

Yo tegno en un richtebox un contrato "modelo" el cual dice algo asi


" el dia <dia> del mes de <mes> de <año> el Sr <nombre1> y el Sr <nombre2> se dispone a alquilar la porpiedad sitada en la calle <callle> ..........................
.................................................. ....................................
.................................................. ......................................"

Bueno lo que yo quiero es que me reemplzae todos los <XXX> por variables o datos de la base de datos



gracias
  #2 (permalink)  
Antiguo 11/09/2010, 01:04
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
Respuesta: Richtexbox

Hola:

Te cuento como lo tengo hecho yo y si te convence o no ya es cosa tuya, imagino que existirán otras posibilidades como en todo.
Debemos tomar como punto de partida cuales son los campos de la BBDD que se pueden utilizar, aparte de algunos campos a los que yo denomino especiales que son Datos de Sistema y no pertenecen a la BBDD

Fecha, Dia, Mes, Año (estos últimos los separo para permitir distintos formatos en los mismos Datos) podrían ser los Datos de Sistema

Yo hago mas o menos lo siguiente:

Dim Carta As String
Carta = Richt.Text
Carta = Replace(Carta, "<Dia>", VariableDia)
Carta = Replace(Carta, "<Mes>", VariableMes)
Carta = Replace(Carta, "<Nombre>", VariableNombre)
....

De este modo aunque tengas la misma variable en distintos sitios de la Carta se cambia en todos ellos.

Después, devuelves Carta al RichtText y asunto resuelto.

Si con esto no te resulta suficiente o te surge alguna duda, dímelo y comentamos mas.

Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #3 (permalink)  
Antiguo 11/09/2010, 13:11
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Sonrisa Respuesta: Richtexbox

Amigo Erbuson no solo no me lo reemplaza sino que me cambia el formato del RtF

Se te ocurre otra cosa ?

yo lo probe con valores fijos, ej:

variableDni = 23455666
variablenombre = Pepe
etc, etc
  #4 (permalink)  
Antiguo 12/09/2010, 01:26
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
Respuesta: Richtexbox

Hola:

Acabo de hacer un simple ejemplo que lo que hace es cargar en el control un documento creado previamente con el Wordpad, pero esto es indiferente, porque no me podría creer que no funcionase, la diferencia básica esta en que hay que usar la propiedad TextRtf del RichTextBox en lugar de la Text indicada anteriormente. La variable <Ano> esta así expresamente porque tuve problemas con <Año> tal vez porque la 'ñ' no es un cáracter muy estandar.

Esta es una imagen con el código y puedes ver que funciona respetando tipos de letra y lo que haga falta, como ves utilizo dos RichTextBox diferentes pero es para que quede mas claro el ejemplo ya que puede utilizarse sólo uno.




Pego aqui tambien el código por si algun día que a veces ocurre no aparece la imagen.

Código vb:
Ver original
  1. Private Sub Command1_Click()
  2.   Dim Texto As String
  3.   Texto = RichTextBox1.TextRTF
  4.   Texto = Replace(Texto, "<Ciudad>", Text1.Text)
  5.   Texto = Replace(Texto, "<Dia>", Format(Date, "d"))
  6.   Texto = Replace(Texto, "<Mes>", Format(Date, "mmmm"))
  7.   Texto = Replace(Texto, "<Ano>", Format(Date, "yyyy"))
  8.   Texto = Replace(Texto, "<Nombre1>", Text2.Text)
  9.   Texto = Replace(Texto, "<Nombre2>", Text3.Text)
  10.   Texto = Replace(Texto, "<Firma>", "erbuson")
  11.   RichTextBox2.TextRTF = Texto
  12. End Sub
  13.  
  14. Private Sub Form_Load()
  15.   RichTextBox1.LoadFile "C:\Documento.rtf"
  16. End Sub


Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #5 (permalink)  
Antiguo 12/09/2010, 08:24
Avatar de gasafonso  
Fecha de Ingreso: septiembre-2008
Mensajes: 357
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Richtexbox

Gracias Amigo, me resulto muy util


un abrazo desde la Argentina !!!!!! j aj a
  #6 (permalink)  
Antiguo 12/09/2010, 11:28
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
Respuesta: Richtexbox

De nada, en lo que se pueda, por aqui andamos.
Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:08.