Publicado el 9 de Octubre del 2019
912 visualizaciones desde el 9 de Octubre del 2019
101,4 KB
9 paginas
Creado hace 20a (01/01/2005)
1. Gráficos.
1.1 Introducción.
En Vb Net como mínimo hay que aproximarse al apartado gráficos, pues en el uso de la impresora es
necesario el uso de varios de esos elementos, por lo tanto al menos hay que hacer una descripción de los
mismos.
El uso de las fuentes y los dibujos en Studio Net igual que otros conceptos han sido modificados.
Antes en Vb 6, se podía cambiar las características de las fuentes, o de los gráficos de cualquier objeto
en tiempo de ejecución, ahora también, pero la sintaxis y la forma han cambiado bastante.
Con el color sucede lo mismo, el color se asigna bajo las mismas circunstancias.
Para dibujar líneas, disponemos de las características de Brush, donde asignamos colores, anchos.
Igual sucede con la ubicación actual del punto de inserción, la propiedad CurrentX y CurrentY, ahora van
como parámetros en el método de la clase Drawing.
En Studio Net aparece un objeto denominado Graphics, que es el área donde se va a realizar el dibujo
con uno de los métodos de dibujo.
Dicho apartado podríamos llamarlo algo así como dibuja, pinta y escribe.
¿Por qué?, porque los elementos que intervienen en la escritura en la impresora son
Pen
Brush
Font
Color
1.2 System.Drawing
Es un espacio de nombres que alberga distintos elementos, entre ellos Drawing.
System.Drawing, proporciona medios para dibujar.
Describir todos los métodos y demás elementos no tiene sentido, así que lo mejor es pinchar en el link
de Microsoft y allí ver todas las posibilidades de cada uno de los métodos y propiedades.
http://msdn2.microsoft.com/es-es/system.drawing(VS.80).aspx
1.3 Graphics.
hacerlo, ese algo es un objeto Graphics..
En Studio Net se parte del criterio que para escribir o dibujar algo primero hay que crear algo donde
Por el mero hecho de colocar un objeto en el formulario, dicho objeto, a parte de que puede ser o no
capaz de recibir un texto o imagen, no dispone de la capacidad de recibir un gráfico, por agrupar el concepto de
dibujo y escritura.
Por lo tanto, lo que se hace es que al objeto del que deseamos obtener la prestación de crear un gráfico,
le asociamos un objeto gráfico, el cual será capaz de recibir esas prestaciones.
Así que para el uso de un objeto Graphics es necesario primero su creación.
Como antes hemos comentado, éste objeto será un área de dibujo, y como tal se ha de corresponder
con algún objeto, por ejemplo el formulario actual, por lo tanto crear un objeto Graphics podría quedar así:
equivalente,
‘ Crear un elemento gráfico con el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
En los ejemplos de Microsoft, en MSDN, aparece con relativa frecuencia la siguiente línea de código, o
NombreProcedimiento (ByVal e As PaintEventArgs)
e.Graphics.DrawString(Texto, Fuente, Pincel.Black, x,y,formato)
1
Dibuja(e.Graphics)
Private Sub Dibuja(ByVal Grafico As Graphics)
End Sub
El objeto e se puede sustituir por la línea
‘ Crear un elemento gráfico con el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
dentro del procedimiento, y sustituir por grafico el objeto e, u otro nombre claro está, con lo que podría
quedar así.
NombreProcedimiento ()
‘ Crear un elemento gráfico con el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
Grafico.DrawString(Texto, Fuente, Pincel.Black, x,y,formato)
Solo tiene sentido para los ejemplos que podamos ver mientras aprendemos el funcionamiento de .Net.
Otra posibilidad es que en el procedimiento se haga el envío solamente del objeto e.graphics, con lo que
solo hay que preocuparse de recibir en nuestro procedimiento un objeto graphics,
Una vez creado el elemento gráfico, ya se podría crear un dibujo en el mismo, y sería suficiente utilizar
uno de sus métodos gráficos,
Grafico.DrawEllipse(Lapiz, 20, 30, 10, 50)
por lo que el resultado sería ...
‘ Crear un elemento gráfico en el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
Grafico.DrawEllipse(Lapiz, 20, 30, 10, 50)
Una vez creado el objeto Graphics, éste se puede usar para dibujar líneas y formas, representar texto o
mostrar y manipular imágenes.
Public Class Form1
Private Sub Dibujar()
' Crear el lápiz
Dim Lapiz As New Pen(Color.Red)
' Crear un elemento gráfico con el formulario actual.
Dim Grafico As Graphics = Me.CreateGraphics
' Dibuja la elipse
Grafico.DrawEllipse(Lapiz, 20, 30, 10, 50)
' Liberar recursos
Grafico.Dispose()
End Sub
2
Private Sub Form1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Me.Click
Dibujar()
End Sub
End Class
En el ejemplo anterior se dibuja una elipse de color rojo, que es el color asignado al objeto lápiz.
Los objetos principales que se usan con el objeto Graphics son
El lápiz, Pen
El pincel, Brush
La fuente. Font
El color, Color.
Formatos, StringFormat
Los objetos lápiz y pincel se usan para representar gráficos, texto e imágenes con la interfaz GDI+.
Un lápiz es una instancia de la clase Pen, y se usa para dibujar líneas y contornos de formas.
Un pincel es una instancia de cualquier clase que se derive de la clase Brush MustInherit (abstract), y se
puede usar para rellenar formas o dibujar texto.
También se puede crear un objeto gráfico a partir de un archivo de imagen, como se puede ver en el
ejemplo que sigue.
Dim MiMapaBits as New Bitmap("C:\MiArchivo.Bmp")
Dim Grafico as Graphics = Graphics.FromImage(MiMapaBits)
1.4 Lápiz, Pen, Clase.
Pertenece al espacio de nombres System.Drawing.
Se usa como elemento dentro del método adecuado para realizar un dibujo, como líneas, curvas y el
contorno de las formas, u otros elementos geométricos.
El ejemplo siguiente crea un lápiz de color negro.
‘ Crear el lápiz
Dim Lapiz as New Pen(Color.Red)
' Crear un pincel.
Dim Pincel as New SolidBrush(Color.Blue)
Cuando ya se ha creado el lápiz, se puede utilizar.
‘ Crear el lápiz
Dim Lapiz as New Pen(Color.Black)
‘ Crear un elemento gráfico con el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
Grafico.DrawEllipse(Lapiz, 20, 30, 10, 50)
3
Con lo anterior creado ya se puede dibujar una elipse como figura en el ejemplo, y el resultado final
puede ser:
Private Sub Dibujar
‘ Crear el lápiz
Dim Lapiz as New Pen(Color.Black)
‘ Crear un elemento gráfico con el formulario actual.
Dim Grafico as Graphics = Me.CreateGraphics
‘ Dibuja la elipse
Grafico.DrawEllipse(Lapiz, 20, 30, 10, 50)
‘ Liberar recursos
Lapiz.Dispose
Grafico.Dispose
End Sub
Conviene después del uso de estos objetos utilizar el método Dispose para liberar recursos.
Para poder acceder a todas sus características podemos acceder al link de Microsoft:
http://msdn2.microsoft.com/es-es/library/system.drawing.pen_members(VS.80).aspx
1.5 Pincel, Brush.
Esta clase es utilizada para rellenar gráficos, rectángulos, elipses, círculos.
En realidad es como si se defieran las condiciones con las que se va a realizar un dibujo, en el mismo
momento en el que éste se ejecuta.
En la versión anterior de VB, antes de utilizar el método Line, se definían las características del tipo de
traza con el que se iba a realizar, el espesor y el color
Los pinceles son objetos que se usan con un objeto Graphics para crear formas sólidas y para
representar texto. Existen varios tipos distintos de pinceles:
tanto, no se pueden crear instancias.
Tipo de pincel
SolidBrush
HatchBrush
TextureBrush
LinearGradientBrush
PathGradientBrush
Descripción
La forma más simple de pincel, que pinta en un color sólido.
Similar a SolidBrush, pero permite seleccionar de entre una amplia
variedad de modelos prestablecidos para dibujar, en lugar de usar un
color sólido.
Dibuja con una textura, por ejemplo una imagen.
Dibuja dos colores mezclados a lo largo de un gradiente.
Dibuja con un gradiente complejo de colores mezclados, basado en una
ruta única definida por el programador.
Todas estas clases heredan de la clase Brush, que es una clase abstract (MustInherit) y de la que, por
En el ejemplo que sigue, creamos un pincel, un gráfico y luego dibujamos en él una elipse.
Private Sub DibujarElipse()
Dim Pincel As New _
System.Drawing.SolidBrush(System.Drawing.Color.LemonChiffon)
Dim Dibujo As System.Drawing.Graphics
Dibujo = Me.CreateGraphics()
Dibujo.FillEllipse(Pincel, New Rectangle(0, 0, 100, 200))
Pincel.Dispose()
End Sub
Para poder acceder a todas sus características podemos acceder a éste link:
http://msdn2.microsoft.com/es-es/library/system.drawing.pen_members(VS.80).aspx
4
1.6 Color, Color.
Los objetos Color son instancias de clases que representan a un color determinado, y tanto los lápices
como los pinceles los pueden usar para indicar el color de los gráficos representados.
Color es una estructura que pertenece al espacio de nombres System.Drawing.
Color es una colección de colores predefinidos con nombre para poder utilizar en cualquier momento, en
el que los colores están definidos como propiedad.
Es una colección muy amplia, y es mejor recurrir a la ayuda y probar los colores disponibles.
Dim Pincel as System.Drawing.SolidBrush
Pincel = New System.Drawing.SolidBrush(System.Drawing.Color.PeachPuff)
Después de la definición del objeto, solo queda utilizarlo con el color con el que se ha definido.
Private Sub DibujarElipse()
Dim Pincel As System.Drawing.SolidBrush
Pincel = New System.Drawing.SolidBrush(System.Drawing.Color.PeachPuff)
Comentarios de: 1. Vb .Net 2005 - Gráficos (0)
No hay comentarios