using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; using DevExpress.XtraEditors; using System.Reflection; using Uninpho.DBOperation.Model; using Uninpho.DBOperation.Operation; using Uninpho.Railway.Waveform; namespace Uninpho.Tools.components.DataManager { public partial class BXDBFrom : DevExpress.XtraEditors.XtraForm { DrawCrl drawfrmlgl = new DrawCrl(); DrawCrl drawfrmjh = new DrawCrl(); bool showJGT = true; public BXDBFrom() { InitializeComponent(); } List pzlist = new List(); string index = string.Empty; public BXDBFrom(List yswjm_lgl, List yswjm_jhfx) { InitializeComponent(); List metadata = new List(); DataAnalysisToPG.GetTongDaoData(ref metadata); for (int i = 0; i < metadata.Count; i++) { pzlist.Add(new PZClass() { Id = metadata[i].name, Name = metadata[i].chname }); } loadData(yswjm_lgl, yswjm_jhfx); } private void loadData(List yswjm_lgl, List yswjm_jhfx) { this.KeyPreview = true; this.KeyDown += yyKeyDown; this.KeyUp += yyKeyUp; WaveInput lglwave = new WaveInput(); WaveInput jhwave = new WaveInput(); lglwave.InputType = "lgl_bxdb"; jhwave.InputType = "jh_bxdb"; //几何分析波形数据 List jhfxBX = DMControl.GetJHFX_BXDataByIDS(yswjm_jhfx[0]); List jhfxBXold = DMControl.GetJHFX_BXDataByIDS(yswjm_jhfx[1]); SetWaveFun("jh", "Licheng", jhfxBX, jhfxBXold, jhwave, drawfrmjh); //轮轨力波形数据 List lglBX = DMControl.GetLGL_BXDataByIDS(yswjm_lgl.Count == 0 ? "0,0" : yswjm_lgl[0]); List lglBXold = DMControl.GetLGL_BXDataByIDS(yswjm_lgl.Count == 0 ? "0,0" : yswjm_lgl[1]); SetWaveFun("lgl", "Licheng", lglBX, lglBXold, lglwave, drawfrmlgl); } private void SetWaveFun(string type, string XaxisList, List jhfxBX, List jhfxBXold, WaveInput jhwave, DrawCrl drawfrmjh) { if (jhfxBX.Count > 0) { List jgjlcjh = new List(); //构造绘制的point WaveDataTools.showBXT(jhfxBX, jhfxBXold, XaxisList, ref jhwave, pzlist);//数据 //录入配置信息 WaveDataTools.ReadConfig(type, ref jhwave); //设置控件位置 ShowLayoutPanel.Controls.Add(drawfrmjh, 0, type == "jh" ? 0 : 1); drawfrmjh.Dock = DockStyle.Fill; WaveDataTools.initPZMessage(ref jhwave); drawfrmjh.YXCLoadEvnet(jhwave,showJGT); showJGT = false; } else { if (type == "jh") XtraMessageBox.Show("几何分析波形数据为空", "提示");//轮轨力波形数据为空 ShowLayoutPanel.RowStyles[type == "jh" ? 0 : 1].Height = 0; } } bool ispushALT = false; bool ispushCtrl = false; bool ispushShift = false; public void yyKeyDown(object sender, KeyEventArgs e) { DrawCrl.boardkey = e.KeyValue; } public void yyKeyUp(object sender, KeyEventArgs e) { DrawCrl.boardkey = 0; } } }