Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Totem Charting - Form1.vb

Form1.vb

Caricato da: Totem
Scarica il programma completo

  1. Public Class Form1
  2.     Private Sub LoadChart(ByVal FileName As String)
  3.         Dim Formatter As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
  4.         Dim File As New IO.FileStream(FileName, IO.FileMode.Open)
  5.         Dim G As New frmGraph
  6.  
  7.         G.TopLevel = False
  8.         G.MdiParent = Me
  9.  
  10.         Try
  11.             G.Chart = Formatter.Deserialize(File)
  12.             File.Close()
  13.             G.Text = G.Chart.Properties.Name
  14.             G.Chart.Surface = G.daGraph
  15.             G.pgChart.SelectedObject = G.Chart.Properties
  16.             G.pgPlane.SelectedObject = G.Chart.Plane
  17.  
  18.             If G.Chart.Data IsNot Nothing Then
  19.                 G.dgvData.DataSource = G.Chart.Data
  20.                 G.Chart.Plane.XLabel = G.Chart.Data.Columns(0).ColumnName
  21.                 G.Chart.Plane.YLabel = "Valori"
  22.             End If
  23.  
  24.             G.Show()
  25.         Catch Ex As Exception
  26.             MessageBox.Show(Ex.Message, "Errore apertura", MessageBoxButtons.OK, MessageBoxIcon.Error)
  27.         End Try
  28.     End Sub
  29.  
  30.     Private Sub strNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles strNew.Click
  31.         Dim Open As New SelectGraphDialog
  32.  
  33.         If Open.ShowDialog = Windows.Forms.DialogResult.OK Then
  34.             Dim G As New frmGraph
  35.             G.TopLevel = False
  36.             G.MdiParent = Me
  37.  
  38.             'Nome del grafico
  39.             G.Text = Open.ChartName
  40.  
  41.             'Tipologia grafico
  42.             Select Case Open.ChartType
  43.                 Case ChartType.Istogramma
  44.                     G.Chart = New Histogram()
  45.                     G.Chart.Properties = New HistogramProperties()
  46.                 Case ChartType.Torta
  47.                     G.Chart = New PieChart()
  48.                     G.Chart.Properties = New PieChartProperties()
  49.                 Case ChartType.Linee
  50.                     G.Chart = New LinesChart()
  51.                     G.Chart.Properties = New LinesChartProperties()
  52.                 Case ChartType.Dispersione
  53.                     G.Chart = New DispersionChart()
  54.                     G.Chart.Properties = New DispersionChartProperties()
  55.             End Select
  56.             G.Chart.Type = Open.ChartType
  57.             G.Chart.Properties.Name = Open.ChartName
  58.             G.Chart.Properties.LegendPosition = New Point(G.daGraph.Width - 200, G.daGraph.Height - 100)
  59.  
  60.             'Superficie di disegno
  61.             G.Chart.Surface = G.daGraph
  62.  
  63.             'Piano cartesiano
  64.             G.Chart.Plane = New CartesianPlane(New Point(60, G.daGraph.Height - 20))
  65.             'Proprietà del piano
  66.             With G.Chart.Plane
  67.                 .Color = Color.Black
  68.                 .GridColor = Color.Gainsboro
  69.                 .GridInterval = 10
  70.                 .PixelsPerDot = 2
  71.                 .UnitsPerDot = 1
  72.                 .XLabel = "Asse X"
  73.                 .YLabel = "Asse Y"
  74.             End With
  75.             G.pgPlane.SelectedObject = G.Chart.Plane
  76.             G.pgChart.SelectedObject = G.Chart.Properties
  77.  
  78.             'Dati
  79.             If Open.DefaultData IsNot Nothing Then
  80.                 G.dgvData.DataSource = Open.DefaultData
  81.                 G.Chart.Plane.XLabel = Open.DefaultData.Columns(0).ColumnName
  82.                 G.Chart.Plane.YLabel = "Valori"
  83.             End If
  84.  
  85.             G.Show()
  86.         End If
  87.     End Sub
  88.  
  89.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  90.         Me.IsMdiContainer = True
  91.         AddHandler My.Application.UnhandledException, AddressOf UnhandledException
  92.     End Sub
  93.  
  94.     Private Sub strOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles strOpen.Click
  95.         Dim Open As New OpenFileDialog
  96.  
  97.         Open.Filter = "File Totem Charting|*.tch"
  98.         If Open.ShowDialog = Windows.Forms.DialogResult.OK Then
  99.             LoadChart(Open.FileName)
  100.         End If
  101.     End Sub
  102.  
  103.     Private Sub strExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles strExit.Click
  104.         Me.Close()
  105.     End Sub
  106.  
  107.     Private Sub UnhandledException(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs)
  108.         MessageBox.Show("Si è verificata un'eccezione non gestita dal programma: " & vbCrLf & e.Exception.Message & vbCrLf & "Contattare il programmatore per maggiori informazioni (vedi About).", "Eccezione non gestita", MessageBoxButtons.OK, MessageBoxIcon.Error)
  109.     End Sub
  110.  
  111.     Private Sub strAbout_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles strAbout.Click
  112.         My.Forms.The_Lair_AboutBox1.ShowDialog()
  113.     End Sub
  114. End Class