This commit is contained in:
hwd
2021-05-08 17:44:46 +02:00
parent 9c54ee4154
commit 0095abe312
5 changed files with 96 additions and 205 deletions

View File

@@ -51,6 +51,8 @@
<Reference Include="Newtonsoft.Json"> <Reference Include="Newtonsoft.Json">
<HintPath>..\..\..\libs\net45\Newtonsoft.Json.dll</HintPath> <HintPath>..\..\..\libs\net45\Newtonsoft.Json.dll</HintPath>
</Reference> </Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Data" /> <Reference Include="System.Data" />
<Reference Include="System.Deployment" /> <Reference Include="System.Deployment" />
@@ -58,11 +60,14 @@
<Reference Include="System.Web" /> <Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" /> <Reference Include="System.Windows.Forms" />
<Reference Include="System.Windows.Forms.DataVisualization" /> <Reference Include="System.Windows.Forms.DataVisualization" />
<Reference Include="System.Xaml" />
<Reference Include="System.Xml" /> <Reference Include="System.Xml" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" /> <Reference Include="System.Net.Http" />
<Reference Include="WindowsBase" />
<Reference Include="WindowsFormsIntegration" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Import Include="Microsoft.VisualBasic" /> <Import Include="Microsoft.VisualBasic" />

View File

@@ -22,83 +22,39 @@ Partial Class Form1
'Das Bearbeiten mit dem Code-Editor ist nicht möglich. 'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> <System.Diagnostics.DebuggerStepThrough()>
Private Sub InitializeComponent() Private Sub InitializeComponent()
Dim ChartArea1 As System.Windows.Forms.DataVisualization.Charting.ChartArea = New System.Windows.Forms.DataVisualization.Charting.ChartArea()
Dim Legend1 As System.Windows.Forms.DataVisualization.Charting.Legend = New System.Windows.Forms.DataVisualization.Charting.Legend()
Dim Series1 As System.Windows.Forms.DataVisualization.Charting.Series = New System.Windows.Forms.DataVisualization.Charting.Series()
Me.tbCoinDataURL = New System.Windows.Forms.TextBox() Me.tbCoinDataURL = New System.Windows.Forms.TextBox()
Me.btnGetCoinData = New System.Windows.Forms.Button() Me.btnGetCoinData = New System.Windows.Forms.Button()
Me.Chart1 = New System.Windows.Forms.DataVisualization.Charting.Chart()
CType(Me.Chart1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'tbCoinDataURL 'tbCoinDataURL
' '
Me.tbCoinDataURL.Location = New System.Drawing.Point(12, 12) Me.tbCoinDataURL.Location = New System.Drawing.Point(18, 18)
Me.tbCoinDataURL.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.tbCoinDataURL.Name = "tbCoinDataURL" Me.tbCoinDataURL.Name = "tbCoinDataURL"
Me.tbCoinDataURL.Size = New System.Drawing.Size(331, 20) Me.tbCoinDataURL.Size = New System.Drawing.Size(494, 26)
Me.tbCoinDataURL.TabIndex = 0 Me.tbCoinDataURL.TabIndex = 0
Me.tbCoinDataURL.Text = "https://www.hirnwun.de:4555/c/getCoinData.php" Me.tbCoinDataURL.Text = "https://www.hirnwun.de:4555/c/getCoinData.php"
' '
'btnGetCoinData 'btnGetCoinData
' '
Me.btnGetCoinData.Location = New System.Drawing.Point(349, 10) Me.btnGetCoinData.Location = New System.Drawing.Point(524, 15)
Me.btnGetCoinData.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.btnGetCoinData.Name = "btnGetCoinData" Me.btnGetCoinData.Name = "btnGetCoinData"
Me.btnGetCoinData.Size = New System.Drawing.Size(75, 23) Me.btnGetCoinData.Size = New System.Drawing.Size(112, 35)
Me.btnGetCoinData.TabIndex = 1 Me.btnGetCoinData.TabIndex = 1
Me.btnGetCoinData.Text = "get data" Me.btnGetCoinData.Text = "get data"
Me.btnGetCoinData.UseVisualStyleBackColor = True Me.btnGetCoinData.UseVisualStyleBackColor = True
' '
'Chart1
'
Me.Chart1.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
ChartArea1.AxisX.Crossing = -1.7976931348623157E+308R
ChartArea1.AxisX.IsLabelAutoFit = False
ChartArea1.AxisX.LabelStyle.Angle = -65
ChartArea1.AxisX.MinorTickMark.Enabled = True
ChartArea1.AxisX.MinorTickMark.Interval = 1.0R
ChartArea1.AxisX.MinorTickMark.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Number
ChartArea1.AxisX.MinorTickMark.TickMarkStyle = System.Windows.Forms.DataVisualization.Charting.TickMarkStyle.AcrossAxis
ChartArea1.AxisX.ScaleBreakStyle.LineDashStyle = System.Windows.Forms.DataVisualization.Charting.ChartDashStyle.NotSet
ChartArea1.AxisX.ScaleView.Zoomable = False
ChartArea1.AxisY.Maximum = 1.0R
ChartArea1.AxisY.Minimum = 0R
ChartArea1.Name = "ChartArea1"
Me.Chart1.ChartAreas.Add(ChartArea1)
Legend1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Legend1.IsTextAutoFit = False
Legend1.LegendStyle = System.Windows.Forms.DataVisualization.Charting.LegendStyle.Column
Legend1.Name = "Legend1"
Legend1.Position.Auto = False
Legend1.Position.Height = 5.709625!
Legend1.Position.Width = 10.40413!
Legend1.Position.X = 86.59587!
Legend1.Position.Y = 3.0!
Me.Chart1.Legends.Add(Legend1)
Me.Chart1.Location = New System.Drawing.Point(12, 39)
Me.Chart1.Name = "Chart1"
Series1.ChartArea = "ChartArea1"
Series1.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line
Series1.CustomProperties = "LabelStyle=Right"
Series1.Legend = "Legend1"
Series1.Name = "DOGE"
Me.Chart1.Series.Add(Series1)
Me.Chart1.Size = New System.Drawing.Size(776, 399)
Me.Chart1.TabIndex = 2
Me.Chart1.Text = "Chart1"
'
'Form1 'Form1
' '
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleDimensions = New System.Drawing.SizeF(9.0!, 20.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(800, 450) Me.ClientSize = New System.Drawing.Size(1032, 793)
Me.Controls.Add(Me.Chart1)
Me.Controls.Add(Me.btnGetCoinData) Me.Controls.Add(Me.btnGetCoinData)
Me.Controls.Add(Me.tbCoinDataURL) Me.Controls.Add(Me.tbCoinDataURL)
Me.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.Name = "Form1" Me.Name = "Form1"
Me.Text = "Form1" Me.Text = "Form1"
CType(Me.Chart1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout() Me.PerformLayout()
@@ -106,5 +62,4 @@ Partial Class Form1
Friend WithEvents tbCoinDataURL As TextBox Friend WithEvents tbCoinDataURL As TextBox
Friend WithEvents btnGetCoinData As Button Friend WithEvents btnGetCoinData As Button
Friend WithEvents Chart1 As DataVisualization.Charting.Chart
End Class End Class

View File

@@ -2,25 +2,35 @@
Imports System.IO Imports System.IO
Imports System.Collections.Generic Imports System.Collections.Generic
Imports Newtonsoft.Json Imports Newtonsoft.Json
Imports ChartDirector
Public Class Form1 Public Class Form1
Dim tblData As New DataTable Dim tblData As New DataTable
Dim tblCreated As Boolean = False
Private Sub btnGetCoinData_Click(sender As Object, e As EventArgs) Handles btnGetCoinData.Click Private Sub btnGetCoinData_Click(sender As Object, e As EventArgs) Handles btnGetCoinData.Click
tblData.Columns.Add("tStamp") If Not tblCreated Then
tblData.Columns.Add("priceEUR") tblData.Columns.Add("tStamp")
tblData.Columns.Add("priceEURDoge")
Chart1.ChartAreas(0).AxisX.ScaleView.Zoomable = True tblData.Columns.Add("priceEURBTT")
Chart1.ChartAreas(0).AxisY.ScaleView.Zoomable = True tblCreated = True
Else
tblData.Clear()
End If
With Chart1.Series.Item(0)
.LabelAngle = 90 'Chart1.ChartAreas(0).AxisX.ScaleView.Zoomable = True
.MarkerStep = 5 'Chart1.ChartAreas(0).AxisY.ScaleView.Zoomable = True
End With
'With Chart1.Series.Item(0)
' .LabelAngle = 90
' .MarkerStep = 5
'End With
Dim drowCoindata As DataRow = tblData.NewRow Dim drowCoindata As DataRow = tblData.NewRow
Dim sRead As StreamReader Dim sRead As StreamReader
@@ -34,15 +44,15 @@ Public Class Form1
For i As Int32 = 0 To lastelement For i As Int32 = 0 To lastelement
tblData.Rows.Add(jo(i)("tstamp"), jo(i)("bitpandaDOGE")) tblData.Rows.Add(jo(i)("tstamp"), jo(i)("bitpandaDOGE"), jo(i)("bitpandaBTT"))
Chart1.Series.Item(0).Points.AddXY(CInt(jo(i)("tstamp")), CDbl(jo(i)("bitpandaDOGE")))
'Chart1.Series.Item(0).Points.AddXY(CInt(jo(i)("tstamp")), CDbl(jo(i)("bitpandaDOGE")))
'Chart1.Series.Item(1).Points.AddXY(CInt(jo(i)("tstamp")), CDbl(jo(i)("bitpandaBTT")))
Next Next
'Dim wReq As HttpWebRequest = DirectCast(WebRequest.Create(tbCoinDataURL.Text), HttpWebRequest) 'Dim wReq As HttpWebRequest = DirectCast(WebRequest.Create(tbCoinDataURL.Text), HttpWebRequest)
'Dim px As IWebProxy = WebRequest.GetSystemWebProxy() 'Dim px As IWebProxy = WebRequest.GetSystemWebProxy()
@@ -53,75 +63,57 @@ Public Class Form1
'Dim resp As HttpWebResponse = wReq.GetResponse 'Dim resp As HttpWebResponse = wReq.GetResponse
End Sub End Sub
Dim numberOfZoom As Int32 = 0
Private Sub Chart1_MouseWheel(sender As Object, e As MouseEventArgs) Handles Chart1.MouseWheel
'Dim chart = Chart1
'Dim xAxis = chart.ChartAreas(0).AxisX
'Dim yAxis = chart.ChartAreas(0).AxisY
'Try Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' If e.Delta < 0 Then
' xAxis.ScaleView.ZoomReset()
' yAxis.ScaleView.ZoomReset()
' ElseIf e.Delta > 0 Then
' Dim xMin = xAxis.ScaleView.ViewMinimum
' Dim xMax = xAxis.ScaleView.ViewMaximum
' Dim yMin = yAxis.ScaleView.ViewMinimum
' Dim yMax = yAxis.ScaleView.ViewMaximum
' Dim posXStart = xAxis.PixelPositionToValue(e.Location.X) - (xMax - xMin) / 4
' Dim posXFinish = xAxis.PixelPositionToValue(e.Location.X) + (xMax - xMin) / 4
' Dim posYStart = yAxis.PixelPositionToValue(e.Location.Y) - (yMax - yMin) / 4
' Dim posYFinish = yAxis.PixelPositionToValue(e.Location.Y) + (yMax - yMin) / 4
' xAxis.ScaleView.Zoom(posXStart, posXFinish)
' 'yAxis.ScaleView.Zoom(posYStart, posYFinish)
' End If
'Catch
'End Try
Dim chart = Chart1
Dim xAxis = chart.ChartAreas(0).AxisX
Dim yAxis = chart.ChartAreas(0).AxisY
Dim xMin = xAxis.ScaleView.ViewMinimum
Dim xMax = xAxis.ScaleView.ViewMaximum
Dim yMin = yAxis.ScaleView.ViewMinimum
Dim yMax = yAxis.ScaleView.ViewMaximum
Dim IntervalX As Integer = 3
Dim IntervalY As Integer = 3
Try
If e.Delta < 0 AndAlso numberOfZoom > 0 Then
Dim posXStart = xAxis.PixelPositionToValue(e.Location.X) - IntervalX * 2 / Math.Pow(2, numberOfZoom)
Dim posXFinish = xAxis.PixelPositionToValue(e.Location.X) + IntervalX * 2 / Math.Pow(2, numberOfZoom)
Dim posYStart = yAxis.PixelPositionToValue(e.Location.Y) - IntervalY * 2 / Math.Pow(2, numberOfZoom)
Dim posYFinish = yAxis.PixelPositionToValue(e.Location.Y) + IntervalY * 2 / Math.Pow(2, numberOfZoom)
If posXStart < 0 Then posXStart = 0
If posYStart < 0 Then posYStart = 0
If posYFinish > yAxis.Maximum Then posYFinish = yAxis.Maximum
If posXFinish > xAxis.Maximum Then posYFinish = xAxis.Maximum
xAxis.ScaleView.Zoom(posXStart, posXFinish)
'yAxis.ScaleView.Zoom(posYStart, posYFinish)
numberOfZoom -= 1
ElseIf e.Delta < 0 AndAlso numberOfZoom = 0 Then
yAxis.ScaleView.ZoomReset()
xAxis.ScaleView.ZoomReset()
ElseIf e.Delta > 0 Then
Dim posXStart = xAxis.PixelPositionToValue(e.Location.X) - IntervalX / Math.Pow(2, numberOfZoom)
Dim posXFinish = xAxis.PixelPositionToValue(e.Location.X) + IntervalX / Math.Pow(2, numberOfZoom)
Dim posYStart = yAxis.PixelPositionToValue(e.Location.Y) - IntervalY / Math.Pow(2, numberOfZoom)
Dim posYFinish = yAxis.PixelPositionToValue(e.Location.Y) + IntervalY / Math.Pow(2, numberOfZoom)
xAxis.ScaleView.Zoom(posXStart, posXFinish)
'yAxis.ScaleView.Zoom(posYStart, posYFinish)
numberOfZoom += 1
End If
If numberOfZoom < 0 Then numberOfZoom = 0
Catch
End Try
End Sub End Sub
'Dim numberOfZoom As Int32 = 0
'Private Sub Chart1_MouseWheel(sender As Object, e As MouseEventArgs) Handles Chart1.MouseWheel
' Dim chart = Chart1
' Dim xAxis = chart.ChartAreas(0).AxisX
' Dim yAxis = chart.ChartAreas(0).AxisY
' Dim xMin = xAxis.ScaleView.ViewMinimum
' Dim xMax = xAxis.ScaleView.ViewMaximum
' Dim yMin = yAxis.ScaleView.ViewMinimum
' Dim yMax = yAxis.ScaleView.ViewMaximum
' Dim IntervalX As Integer = 3
' Dim IntervalY As Integer = 3
' Try
' If e.Delta < 0 AndAlso numberOfZoom > 0 Then
' Dim posXStart = xAxis.PixelPositionToValue(e.Location.X) - IntervalX * 2 / Math.Pow(2, numberOfZoom)
' Dim posXFinish = xAxis.PixelPositionToValue(e.Location.X) + IntervalX * 2 / Math.Pow(2, numberOfZoom)
' Dim posYStart = yAxis.PixelPositionToValue(e.Location.Y) - IntervalY * 2 / Math.Pow(2, numberOfZoom)
' Dim posYFinish = yAxis.PixelPositionToValue(e.Location.Y) + IntervalY * 2 / Math.Pow(2, numberOfZoom)
' If posXStart < 0 Then posXStart = 0
' If posYStart < 0 Then posYStart = 0
' If posYFinish > yAxis.Maximum Then posYFinish = yAxis.Maximum
' If posXFinish > xAxis.Maximum Then posYFinish = xAxis.Maximum
' xAxis.ScaleView.Zoom(posXStart, posXFinish)
' 'yAxis.ScaleView.Zoom(posYStart, posYFinish)
' numberOfZoom -= 1
' ElseIf e.Delta < 0 AndAlso numberOfZoom = 0 Then
' yAxis.ScaleView.ZoomReset()
' xAxis.ScaleView.ZoomReset()
' ElseIf e.Delta > 0 Then
' Dim posXStart = xAxis.PixelPositionToValue(e.Location.X) - IntervalX / Math.Pow(2, numberOfZoom)
' Dim posXFinish = xAxis.PixelPositionToValue(e.Location.X) + IntervalX / Math.Pow(2, numberOfZoom)
' Dim posYStart = yAxis.PixelPositionToValue(e.Location.Y) - IntervalY / Math.Pow(2, numberOfZoom)
' Dim posYFinish = yAxis.PixelPositionToValue(e.Location.Y) + IntervalY / Math.Pow(2, numberOfZoom)
' xAxis.ScaleView.Zoom(posXStart, posXFinish)
' 'yAxis.ScaleView.Zoom(posYStart, posYFinish)
' numberOfZoom += 1
' End If
' If numberOfZoom < 0 Then numberOfZoom = 0
' Catch
' End Try
'End Sub
End Class End Class

View File

@@ -1,75 +1,9 @@
'Class Module1 Imports System.Runtime.CompilerServices
Public Module Module1
' ' Create a new request to the mentioned URL. <Extension()>
' Dim myWebRequest As WebRequest = WebRequest.Create("http://www.contoso.com") Public Sub Add(Of T)(ByRef arr As T(), item As T)
' Dim myProxy As New WebProxy() Array.Resize(arr, arr.Length + 1)
arr(arr.Length - 1) = item
' ' Obtain the Proxy Prperty of the Default browser. End Sub
' myProxy = CType(myWebRequest.Proxy, WebProxy) End Module
' ' Print myProxy address to the console.
' Console.WriteLine(ControlChars.Cr + "The actual default Proxy settings are {0}", myProxy.Address)
' Try
' Console.WriteLine(ControlChars.Cr + "Please enter the new Proxy Address to be set ")
' Console.WriteLine("The format of the address should be http://proxyUriAddress:portaddress")
' Console.WriteLine("Example:http://moon.proxy.com:8080")
' Dim proxyAddress As String
' proxyAddress = Console.ReadLine()
' If proxyAddress.Length = 0 Then
' myWebRequest.Proxy = myProxy
' Else
' Console.WriteLine(ControlChars.Cr + "Please enter the Credentials")
' Console.WriteLine("Username:")
' Dim username As String
' username = Console.ReadLine()
' Console.WriteLine(ControlChars.Cr + "Password:")
' Dim password As String
' password = Console.ReadLine()
' ' Create a new Uri object.
' Dim newUri As New Uri(proxyAddress)
' ' Associate the new Uri object to the myProxy object.
' myProxy.Address = newUri
' ' Create a NetworkCredential object and is assign to the Credentials property of the Proxy object.
' myProxy.Credentials = New NetworkCredential(username, password)
' myWebRequest.Proxy = myProxy
' End If
' Console.WriteLine(ControlChars.Cr + "The Address of the new Proxy settings are {0}", myProxy.Address)
' Dim myWebResponse As WebResponse = myWebRequest.GetResponse()
' ' Print the HTML contents of the page to the console.
' Dim streamResponse As Stream = myWebResponse.GetResponseStream()
' Dim streamRead As New StreamReader(streamResponse)
' Dim readBuff(256) As [Char]
' Dim count As Integer = streamRead.Read(readBuff, 0, 256)
' Console.WriteLine(ControlChars.Cr + "The contents of the Html pages are :")
' While count > 0
' Dim outputData As New [String](readBuff, 0, count)
' Console.Write(outputData)
' count = streamRead.Read(readBuff, 0, 256)
' End While
' ' Close the Stream object
' streamResponse.Close()
'streamRead.Close()
'' Release the HttpWebResponse Resource.
' myWebResponse.Close()
' Console.WriteLine(ControlChars.Cr + "Press any key to continue.........")
' Console.Read()
' Catch e As UriFormatException
' Console.WriteLine(ControlChars.Cr + "{0}", e.Message)
' Console.WriteLine(ControlChars.Cr + "The format of the myProxy address you entered is invalid")
' End Try
'End Class

View File

@@ -1,4 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="ChartDirector.Net" version="6.4.0" targetFramework="net461" />
<package id="ChartDirector.Net.Desktop.Controls" version="6.4.1" targetFramework="net461" />
<package id="LiveCharts" version="0.9.7" targetFramework="net461" />
<package id="LiveCharts.WinForms" version="0.9.7.1" targetFramework="net461" />
<package id="LiveCharts.Wpf" version="0.9.7" targetFramework="net461" />
<package id="RestSharp" version="106.11.7" targetFramework="net461" /> <package id="RestSharp" version="106.11.7" targetFramework="net461" />
</packages> </packages>