SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: rogerg1983 en Viernes 20 de Julio de 2007, 23:23

Título: AxMSChart (GRAFICOS) en VB.net
Publicado por: rogerg1983 en Viernes 20 de Julio de 2007, 23:23
En esta ocasión les explicaré como utilizar gráficos en sus aplicaciones de VB.net, para fines ilustrativos el ejemplo esta programado en Visual Basic .Net 2003, pero es totalmente valido para 2005, comencemos..

En la vida actual los reportes de nuestros programas tiene  que ser muy atractivos para los usuarios y que mejor forma de utilizar gráficos, vamos a utilizar una base de datos cualquiera que en este caso es SQL Server 2000, y el componente que utilizamos es AxMSChart, para añadir este componente a nuestra aplicación agregamos un nuevo elemento al cuadro de herramientas, en este caso seria el Componente COM llamado MICROSOFT CHART CONTROL 6.0.



Agregamos ese elemento a nuestro formulario y comenzaremos a trabajar sobre el.


 Llenamos nuestro grafico de la siguiente manera:

            If Datasets.Tables(0).Rows.Count >= 1 Then
                AxMSChart1.RowCount = 1
                AxMSChart1.ColumnCount = 0
                For Each objRow As DataRow In Datasets.Tables(0).Rows
                    AxMSChart1.ColumnCount = AxMSChart1.ColumnCount +1
                    AxMSChart1.DataGrid.SetData(1, x, Val(objRow.Item(1)), False)
                    AxMSChart1.DataGrid.ColumnLabel(x, 1) = Trim(objRow.Item(0))
                    x = x + 1
                Next
            Datasets.Dispose()

Donde, nuestra primera columna va hacer nuestro dato de la X y el segundo la Y.

La pregunta que surge como imprimimos este grafico:

Try
            Dim a As Bitmap
            Me.AxMSChart1.EditCopy()
            If Clipboard.GetDataObject.GetDataPresent(DataFormats.Bitmap) Then
a=System.Windows.Forms.Clipboard.GetDataObject.GetData(System.Windows.Forms.DataFormats.Bitmap)
                Dim fuente As New Font("Arial", 16, FontStyle.Underline)
                e.Graphics.DrawString("GRAFICO", fuente, Brushes.Black, 300, 95)
         fuente = New Font("Arial", 10)
         e.Graphics.DrawImage(a, 100, 150, 600, 550)
        End If

        Catch ex As Exception

        End Try
    End Sub

Si queremos exportar ese grafico a Word, solamente copiamos el grafico con el siguiente comando:

Me.AxMSChart1.EditCopy()

Y luego para pegarlo en Word, le damos pegado especial, imagen.








Autor: Ing. Róger González Rojas

http://rgrnet.4t.com (http://rgrnet.4t.com)
Título: Gran aporte
Publicado por: Rro_237 en Martes 4 de Diciembre de 2007, 16:55
.... excelente articulo, nada que decir
Título: Problema al Graficar el Mschart
Publicado por: Anónimo en Viernes 4 de Enero de 2008, 00:28
Estoy utilizando el codigo que publicast paraimprimir el Mschart... pero cuando llego a la instruccion:
If Clipboard.GetDataObject.GetDataPresent(DataFormats.Bitmap) Then

me aparece el siguiente mensaje:
"Se produjo una excepción de tipo 'System.ExecutionEngineException'."

me podrias ayudar? Gracias
Título: Re:AxMSChart (GRAFICOS) en VB.net
Publicado por: my_moon en Miércoles 23 de Noviembre de 2011, 17:14
Hola . . . excelente tu aporte . . . pero seria de gran ayuda si nos puedes explicar desde que declaras las variables y como hacerlo desde un dataset que obtengo de una consulta en mysql.

saludos