Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Nietoma en 28 Mayo 2012, 20:10 pm



Título: Cambiar formato a un Richtextbox
Publicado por: Nietoma en 28 Mayo 2012, 20:10 pm
Hola a todos.

He creado un Richtextbox en tiempo de ejecución y no soy capaz de cambiarle el formato de letra con el FontDialog , sin embargo creándolo en tiempo de diseño si me lo permite.
Si alguien puede ayudarme se lo agradecería mucho.

Un saludo.


Título: Re: Cambiar formato a un Richtextbox
Publicado por: MCKSys Argentina en 28 Mayo 2012, 20:35 pm
Podrias poner el codigo que etsas usando? Asi podriamos ayudarte mejor...


Título: Re: Cambiar formato a un Richtextbox
Publicado por: Nietoma en 28 Mayo 2012, 21:12 pm
Hola.

Utilizo este:
Código
  1. FontDialog1.Font = Richtextbox1.Font
  2.                FontDialog1.ShowDialog()
  3.                Rchtextbox1.Font = FontDialog1.Font

La cuestión es si lo coloco seguido de este que lo crea dinamicamente:
Código
  1. Richtextbox1.Size = New Size(300, 300)
  2. Richtextbox1.Location = New Point(50, 50)
  3. Controls.Add(Texto)

si me cambia el formato, pero solo antes de aparecer el richtextbox y nada mas, sin embargo si lo asocio a un botón o a cualquier otro control no hay manera.


Título: Re: Cambiar formato a un Richtextbox
Publicado por: MCKSys Argentina en 28 Mayo 2012, 21:38 pm
En un form con un RichTextBox (RichTextBox1) oculto, un Common Dialog (CMD) y un Command button (Command1):

Código:
Dim rtf1 As RichTextBox

Private Sub Command1_Click()
'crea un RTF en la pos 60,60
Set rtf1 = Controls.Add("RichText.RichTextCtrl.1", "txt")
rtf1.Left = 60
rtf1.Top = 60
rtf1.Visible = True

'Carga un Common Dialog con los valores de la FONT del RTF
CMD.Flags = cdlCFBoth
CMD.FontBold = rtf1.Font.Bold
CMD.FontItalic = rtf1.Font.Italic
CMD.FontName = rtf1.Font.Name
CMD.FontSize = rtf1.Font.Size
CMD.FontStrikethru = rtf1.Font.Strikethrough
CMD.FontUnderline = rtf1.Font.Underline
CMD.ShowFont
'Pone la FONT del RTF a los valores que devuelve el CMD
rtf1.Font.Bold = CMD.FontBold
rtf1.Font.Italic = CMD.FontItalic
rtf1.Font.Name = CMD.FontName
rtf1.Font.Size = CMD.FontSize
rtf1.Font.Strikethrough = CMD.FontStrikethru
rtf1.Font.Underline = CMD.FontUnderline
End Sub


Eso me funciona bastante bien...


Título: Re: Cambiar formato a un Richtextbox
Publicado por: raul338 en 29 Mayo 2012, 03:30 am
El código de Nietoma encaja perfecto con la sintaxis de vb.net, es así? Porque de ser así esta en el foro incorrecto y lo tengo que mover. ademas que es probable de que el código que te ayudemos no funcione correctamente :P


Título: Re: Cambiar formato a un Richtextbox
Publicado por: $Edu$ en 29 Mayo 2012, 03:41 am
Es .net si raul, movelo que hara que otros pierdan el tiempo, como hizo MCKSys xD


Título: Re: Cambiar formato a un Richtextbox
Publicado por: Nietoma en 29 Mayo 2012, 11:47 am
Siento mucho haberme confundido, pero es que soy nuevo en esto y no se cual es la diferencia entre Visual Basic y VB.net, en visual basic lo poco que utilicé fue Visual Basic 6.0,pero ya no sé por donde van y lo único que sé es que cuando me bajé este visual basic era "Visual Basic 2008" no decia nada de .Net.
Siento haberle echo perder el tiempo a MCKSys, desde luego no era mi intención y le doy las gracias por la ayuda que me ha prestado que seguro que me será útil aunque sea Visual Basic.
Un saludo.