using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DBFactory;
using System.Net.Sockets;
using System.Threading;
using System.Linq;
using Microsoft.VisualBasic;
using System.IO.Ports;
using System.Resources;
using System.Drawing.Drawing2D;
namespace wcfControlMonitorClient
{
///
/// Creator:Richard.liu
/// 调度程序主窗口
///
public partial class FrmControlMonitor : WeifenLuo.WinFormsUI.Docking.DockContent
{
StringBuilder sql = new StringBuilder();
Model.MDevice devinfo;
FrmDeviceStatus _deviceStatus = new FrmDeviceStatus();
DBFactory.DBOperator dbo = CStaticClass.dbo;
DBFactory.DBOperator dbo1 = new DBFactory.DBOperator();
private static FrmControlMonitor _formInstance;
public static FrmControlMonitor FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmControlMonitor();
}
return _formInstance;
}
set { _formInstance = value; }
}
public FrmControlMonitor()
{
InitializeComponent();
//this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
////设定字体大小为12px
//this.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel, ((byte)(134)));
_formInstance = this;
}
#region 方法
public void FlashPanit(string obj, bool visible)
{
this.Controls[obj].Visible = visible;
}
public void FlashPanit(string obj, Image backgroundImage)
{
this.Controls[obj].BackgroundImage = backgroundImage;
}
public void FlashPanit(string obj, ImageLayout backgroundImageLayout)
{
this.Controls[obj].BackgroundImageLayout = backgroundImageLayout;
}
public void FlashPanit(string obj, int top, int left)
{
this.Controls[obj].Top = top;
this.Controls[obj].Left = left;
}
public void FlashPanit(string obj, string text, bool append)
{
if (append == true)
{
this.Controls[obj].Text += text;
}
else
{
this.Controls[obj].Text = text;
}
}
public string GetObjectText(string obj)
{
return this.Controls[obj].Text;
}
public void MonitorRefresh(object dataSource)
{
#region Added by DingXiaoxu for Dock TaskList on 20101219
FrmTaskList.FormInstance.MonitorRefresh(dataSource);
#endregion
//this.dgvMonitor.DataSource = dataSource;
////20100108
//dataSource = null;
}
public void ManagerRefresh(object dataSource)
{
#region Added by DingXiaoxu for Dock TaskList on 20101219
FrmTaskList.FormInstance.ManagerRefresh(dataSource);
#endregion
//this.dgvManager.DataSource = dataSource;
////20100108
//dataSource = null;
}
#endregion
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;//WS_CLIPCHILDREN 两个窗体叠加时,重叠部分不重绘
return cp;
}
}
private void timerFlash_Tick(object sender, EventArgs e)
{
string[] DS; char[] dd = new char[1] { '.' };
Model.MDevice device;
TimeSpan ts = DateTime.Now.TimeOfDay;
DataView dv; DataView dvJY;
this.SuspendLayout(); //richard.liu20140806
try
{
//if (CStaticClass.WCFOK == true)
{
sql.Remove(0, sql.Length);//richard.liu20140806
sql.Append("SELECT F_DeviceIndex FROM T_Base_Device WHERE (F_LockedState = - 1) ");
dvJY = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView;//richard.liu20140806
dvJY.Sort = "F_DeviceIndex";
Button stack1 = bt1_stacker1;
Button stack2 = bt1_stacker2;
Button stack3 = bt1_stacker3;
TextBox tw1n = tb1_stacker1_Near;
TextBox tw2n = tb1_stacker2_Near;
TextBox tw3n = tb1_stacker3_Near;
Panel pp = plAccessorial1;
if (this.tabControl1.SelectedTab.Name == "tabPage1")
{
//pp = plAccessorial1;
//stack1 = bt1_23034;
//stack2 = bt1_stacker1;
//tw1n = tb1_23034_Near;
// tw1f = tb1_11001_Far;
//tw2n = tb1_stacker1_Near;
// tw2f = tb1_11002_Far;
//tw3n = tb1_11003_Near;
// tw3f = tb1_11003_Far;
//stackInitX = 91;
//StackInitXX = 9.8;
}
else if (this.tabControl1.SelectedTab.Name == "tabPage2")
{
// pp = panelWareHouse;
// tw31005_1 = tb_31005_1_1;
// tw31005_2 = tb_31005_1_2;
// tw31006_1 = tb_31006_1_1;
// tw31006_2 = tb_31006_1_2;
//bigstack5 = bt_31005;
//bigstack6 = bt_31006;
//smallbarcode=6000;
//bigbarcode=46000;
//startadd2 = 705;//第一列图上坐标
//k2 = (double)(560 + 50) / (double)21385;//图上货架长度/货架实际长度(29944-8559)
//startcode2 = 8559;//第一列对应的实际坐标
//startadd2 = 785;//第一列图上坐标
//k2 = (double)(781) / (double)29834;//图上货架长度/货架实际长度(38393-8559)
//startcode2 = 8559;//第一列对应的实际坐标
}
else if (this.tabControl1.SelectedTab.Name == "tabPage3")
{
//pp = InOutAreaPanel;
//tw31005_1 = tb_31005_2_1;
//tw31005_2 = tb_31005_2_2;
//tw31006_1 = tb_31006_2_1;
//tw31006_2 = tb_31006_2_2;
//bigstack5 = bt_31005_2;
//bigstack6 = bt_31006_2;
//smallbarcode = 0;
//bigbarcode = 10000000;
//startadd2 = 701;//第一列图上坐标
////startadd2 = 822;//第一列图上坐标
//k2 = (double)(691 + 8) / (double)28237;//图上货架长度/货架实际长度 79006-50769
////k2 = (double)(820) / (double)42087;//图上货架长度/货架实际长度 79006-36919
//startcode2 = 50769;//第一列对应的实际坐标
////startcode2 = 36919;//第一列对应的实际坐标
}
#region 每层楼监视画面
foreach (Button ctrl in pp.Controls.OfType