private: System::Void timer1_Tick(System::Object^ sender, System::EventArgs^ e)
{
if (time_out == 0)
{
time_out = Convert::ToInt16(comboBox5->Text);
try
{
textBox5->Clear();
System::Text::Encoding^ gb = System::Text::Encoding::GetEncoding("gb2312");
}
catch (...)
{
tbxRecv->AppendText("串口数据写入错误\r\n");
serialPort1->Close();
button1_Click(sender, e);
}
}
if (time_out == 1)
{
time_out--;
chart1->Series->Clear();
chart1->ChartAreas[0]->AxisX->Maximum = 20;
chart1->ChartAreas[0]->AxisY->Maximum = 100;
chart1->ChartAreas[0]->AxisX->Minimum = 0;
chart1->ChartAreas[0]->AxisY->Minimum = -10;
System::Windows::Forms::DataVisualization::Charting::Series^ series = gcnew System::Windows::Forms::DataVisualization::Charting::Series("实时显示");
series->ChartType = System::Windows::Forms::DataVisualization::Charting::SeriesChartType::Spline;
series->BorderWidth = 1;
series->ShadowOffset = 1;
for (int i = 0; i < 19; i++)
{
myIntArray[i] = myIntArray[i + 1];
series->Points->AddY(myIntArray[i]);
}
try
{
String^ str = textBox5->Text;
String^ str1 = str->Remove(0, 4);
String^ temp = str1->Remove(4);
tbxTemp->Text = temp;
String^ str2 = str->Remove(0, 13);
tbxHumi->Text = str2;
myIntArray[19] = Convert::ToInt32(tbxTemp->Text);
}
catch (...)
{
myIntArray[19] = 0;
}
series->Points->AddY(myIntArray[19]);
chart1->Series->Add(series);
}
else time_out--;
}