From 63cda7dae45b9f2859c95901681f8977e4efa993 Mon Sep 17 00:00:00 2001 From: "de@itstall.de" <de@itstall.de> Date: Tue, 4 Feb 2020 20:30:58 +0100 Subject: [PATCH] Tendenz arrows invisible if not enought data --- Wetterstation/Form1.Designer.cs | 3 +++ Wetterstation/Form1.cs | 10 ++++++++++ Wetterstation/Sensor.cs | 4 ++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Wetterstation/Form1.Designer.cs b/Wetterstation/Form1.Designer.cs index 7de02f9..d2544c5 100644 --- a/Wetterstation/Form1.Designer.cs +++ b/Wetterstation/Form1.Designer.cs @@ -843,6 +843,7 @@ namespace Wetterstation this.pbTendenzPressure.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; this.pbTendenzPressure.TabIndex = 71; this.pbTendenzPressure.TabStop = false; + this.pbTendenzPressure.Visible = false; // // pictureBox2 // @@ -868,6 +869,7 @@ namespace Wetterstation this.pbTendenzTempOut.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; this.pbTendenzTempOut.TabIndex = 75; this.pbTendenzTempOut.TabStop = false; + this.pbTendenzTempOut.Visible = false; // // pbTendenzTempIn // @@ -881,6 +883,7 @@ namespace Wetterstation this.pbTendenzTempIn.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; this.pbTendenzTempIn.TabIndex = 76; this.pbTendenzTempIn.TabStop = false; + this.pbTendenzTempIn.Visible = false; // // Hintergrund // diff --git a/Wetterstation/Form1.cs b/Wetterstation/Form1.cs index 99ba916..9910cb2 100644 --- a/Wetterstation/Form1.cs +++ b/Wetterstation/Form1.cs @@ -245,6 +245,8 @@ namespace Wetterstation lbTempOutMin.Invoke(new Action(() => { lbTempOutMin.Text = weatherData.tempMin + " °C"; })); lbTempOutMax.Invoke(new Action(() => { lbTempOutMax.Text = weatherData.tempMax + " °C"; })); owm.Temperatures = weatherData.temp; + if (owm._temperatures.Count < 10) pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Visible = false; })); + else pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Visible = true; })); pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Image = RotateImage((Bitmap)global::Wetterstation.Properties.Resources.ResourceManager.GetObject("Tendenz"), owm.tempTendenz()); })); } if(!node1Out.humidity) @@ -264,6 +266,8 @@ namespace Wetterstation { lbLuftdruck.Invoke(new Action(() => { lbLuftdruck.Text = weatherData.pressure + " mbar"; })); owm.Pressures = (double)weatherData.pressure; + if (owm._pressures.Count < 10) pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Visible = false; })); + else pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Visible = true; })); pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Image = RotateImage((Bitmap)global::Wetterstation.Properties.Resources.ResourceManager.GetObject("Tendenz"), owm.pressureTendenz()); })); } if(!node1Out.rain) @@ -357,6 +361,8 @@ namespace Wetterstation lbTempInMin.Invoke(new Action(() => { lbTempInMin.Text = node1In.tempMin + " °C"; })); lbTempInMax.Invoke(new Action(() => { lbTempInMax.Text = node1In.tempMax + " °C"; })); node1In.Temperatures = (double)weatherData[0]["temperature"]; + if (node1In._temperatures.Count < 10) pbTendenzTempIn.Invoke(new Action(() => { pbTendenzTempIn.Visible = false; })); + else pbTendenzTempIn.Invoke(new Action(() => { pbTendenzTempIn.Visible = true; })); pbTendenzTempIn.Invoke(new Action(() => { pbTendenzTempIn.Image = RotateImage((Bitmap)global::Wetterstation.Properties.Resources.ResourceManager.GetObject("Tendenz"), node1In.tempTendenz()); })); } if (weatherData[0]["client"] == node1In.host && weatherData[0]["sensor"] == node1In.name && weatherData[0]["humidity"] != null) @@ -369,6 +375,8 @@ namespace Wetterstation node1In.pressure = true; lbLuftdruck.Invoke(new Action(() => { lbLuftdruck.Text = weatherData[0]["pressure"] + " hPa"; })); node1In.Pressures = (double)weatherData[0]["pressure"]; + if (node1In._pressures.Count < 10) pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Visible = false; })); + else pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Visible = true; })); pbTendenzPressure.Invoke(new Action(() => { pbTendenzPressure.Image = RotateImage((Bitmap)global::Wetterstation.Properties.Resources.ResourceManager.GetObject("Tendenz"), node1In.pressureTendenz()); })); } if (weatherData[0]["client"] == node1Out.host && weatherData[0]["sensor"] == node1Out.name && weatherData[0]["temperature"] != null) @@ -380,6 +388,8 @@ namespace Wetterstation lbTempOutMin.Invoke(new Action(() => { lbTempOutMin.Text = node1Out.tempMin + " °C"; })); lbTempOutMax.Invoke(new Action(() => { lbTempOutMax.Text = node1Out.tempMax + " °C"; })); node1Out.Temperatures = (double)weatherData[0]["temperature"]; + if (node1Out._temperatures.Count < 10) pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Visible = false; })); + else pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Visible = true; })); pbTendenzTempOut.Invoke(new Action(() => { pbTendenzTempOut.Image = RotateImage((Bitmap)global::Wetterstation.Properties.Resources.ResourceManager.GetObject("Tendenz"), node1Out.tempTendenz()); })); } if (weatherData[0]["client"] == node1Out.host && weatherData[0]["sensor"] == node1Out.name && weatherData[0]["humidity"] != null) diff --git a/Wetterstation/Sensor.cs b/Wetterstation/Sensor.cs index 8ca7286..a297b90 100644 --- a/Wetterstation/Sensor.cs +++ b/Wetterstation/Sensor.cs @@ -17,8 +17,8 @@ namespace Wetterstation public bool snow { get; set; } public double tempMin { get; set; } public double tempMax { get; set; } - private List<double> _temperatures = new List<double>(); - private List<double> _pressures = new List<double>(); + public List<double> _temperatures = new List<double>(); + public List<double> _pressures = new List<double>(); public double Temperatures { set -- GitLab