Título: Introducir texto en un Formulario (Visual Basic 2013) (Solucionado) Publicado por: Tazmania40 en 1 Octubre 2015, 14:17 pm Buenas, llevo unos meses aprendiendo Visual Basic 2013 puesto que era de al antigua escuela de Visual Basic 6 y llevaba años sin programar. Prácticamente estoy recopilando conocimientos y pasando al nuevo VB 2013 porque el código cambia mucho y una de las cosas que con más facilidad hacía con Visual Basic 6 era.
Tenía un Formulario y un botón de comando y escribía dentro del botón Dim Suma As Integer Suma = 5 + 15 Print ("La suma es = ", Suma) y en el Formulario aparecía el texto escrito y el resultado de la suma, sin necesidad de usar un Label o un TextBox. Si volvía a escribir otra línea Print pues debajo y es lo que necesito para mi programa, porque quiero mostrar como 10 operaciones una debajo de otra y no quiero poner 10 TextBox, sino realizarlo con un For..Next como antes hacía, ya que van a ser un total de 8 listados de 10, eso me supone 80 TextBox y no creo que sea un programa correcto (estoy utilizando Formularios MDI). Asi que lo que quiero es simple, al pulsar un botón que me aparezca en el Formulario principal o bien formulario secundario del MDI, el texto que ponga y la operación (variable). He mirado por internet y dicen utilizar método DrawString pero es bastante lioso y no funcionan los ejemplos (me dan error). Si hay alguna manera fácil o bien un ejemplo con DrawString declarándolo y que funcione para Visual Basic 2013 con el Botón y Formulario solamente; si hay que añadir algo más. Muchas gracias y espero una solución de algo tan sencillo con VB6 ahora tan complicado con VB2013. Título: Re: Introducir texto en un Formulario (Visual Basic 2013) Publicado por: Tazmania40 en 1 Octubre 2015, 22:36 pm Escribo código para haceros ver una idea de lo que quiero.
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim Suma As Integer = 10 Dim A As Integer For A = 1 To 10 Label1.Text = ("Numero de Operación = " & A.ToString) Next A End Sub Naturalmente el resultado dará una sola línea, quiero como antes con el método Print que daría 10 líneas y puestas en el Formulario. No quiero Label, ni TextBox, ni emplear Arrays porque no voy a usar variables, son varios listados como si fuera en papel pero mostarlo en el Formulario. Estoy mirando y creo que tendré que usar el método Drawing que es bastante lioso y para una cosa sencilla tienes que programar varias lineas declarando, quedará más bonito con las fuentes y demás, pero no le veo la práctica de antes a cosas sencillas. Sigo mirando y si lo consigo lo expongo aqui, pero si alguién sabe una respuesta más acorde con lo que pido se lo agradezco. Título: Re: Introducir texto en un Formulario (Visual Basic 2013) Publicado por: Tazmania40 en 2 Octubre 2015, 12:05 pm De momento he encontrado una solución y lo tengo resuelto mediante el método Drawing, aunque si alguien conoce alguna otra forma parecida a Print del VB6, porque antes con 2 líneas hacias lo mismo que este código.
Private Sub Contorno_Click(sender As Object, e As EventArgs) Handles Contorno.Click Dim Suma As Integer = 10 Dim A As Integer Dim MiGrafico As Graphics = Me.CreateGraphics Dim MiFuente As Font Dim MiPincel As Brush MiPincel = New Drawing.SolidBrush(Color.Blue) MiFuente = New System.Drawing.Font("Tahoma", 12, FontStyle.Underline) For A = 0 To 9 MiGrafico.DrawString("Operación " & Suma + A, MiFuente, MiPincel, 200, 10 + (A * 20)) Next End Sub Título: Re: Introducir texto en un Formulario (Visual Basic 2013) Publicado por: tincopasan en 2 Octubre 2015, 15:20 pm perdón, la verdad no conozco algún método para lo que buscas, pero, no querés usar varios textbox, está bien, y ¿un listbox?, después te permite otros métodos y propiedades que el form te costará más.
Título: Re: Introducir texto en un Formulario (Visual Basic 2013) Publicado por: Tazmania40 en 5 Octubre 2015, 10:37 am Al final utilizaré este código y con el evento Paint, es lo que más se asemeja al print de antes. No utilizo etiquetas, ni label puesto que voy a utilizar Formularios MDI y tendría que estar realizando más código y no por diseño, además de que solo van a ser listas al igual que si imprimes. Si fuera un solo Formulario si lo haría.
Código [/code] Esta es la SOLUCIÓN que veo. Gracias a todos y al foro. |