Process.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. using CCWin;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Windows.Forms;
  10. using UAS_KanBan.CustomControl;
  11. namespace UAS_KanBan
  12. {
  13. public partial class Process : BaseForm
  14. {
  15. AutoSizeControl asc = new AutoSizeControl();
  16. DataHelper dh = new DataHelper();
  17. public Process(string LineCode, string WcCode)
  18. {
  19. InitializeComponent();
  20. Line.Text = LineCode;
  21. 班制.Text = WcCode;
  22. int WorkHeight = Screen.PrimaryScreen.Bounds.Width;
  23. if (WorkHeight <= 1024)
  24. {
  25. 机型.MaximumSize = new Size(300, 0);
  26. for (int i = 0; i < this.Controls.Count; i++)
  27. {
  28. if (Controls[i] is Label ||Controls[i] is ValueLabel)
  29. {
  30. if (Controls[i].Tag != null && Controls[i].Tag.ToString() == "AutoFont")
  31. Controls[i].Font = new Font("宋体", Controls[i].Font.Size - 10, FontStyle.Bold);
  32. else
  33. Controls[i].Font = new Font("宋体", Controls[i].Font.Size - 8, FontStyle.Bold);
  34. }
  35. }
  36. }
  37. }
  38. private void Process_Load(object sender, EventArgs e)
  39. {
  40. asc.InitControl(this);
  41. Refresh_Tick(sender, e);
  42. Refresh.Tick += Refresh_Tick;
  43. Refresh.Interval = Setting.RefreshRate * 1000;
  44. Refresh.Start();
  45. WindowState = FormWindowState.Maximized;
  46. }
  47. private void Refresh_Tick(object sender, EventArgs e)
  48. {
  49. DataTable dt = (DataTable)dh.ExecuteSql("select KBI_LINE_ZTL('" + Line.Text + "','" + 班制.Text + "') from dual", "select");
  50. string Data = dt.Rows[0][0].ToString();
  51. string[] Item = Data.Split(':');
  52. string[] ItemName = new string[Item.Length];
  53. string[] ItemData = new string[Item.Length];
  54. try
  55. {
  56. for (int i = 0; i < Item.Length; i++)
  57. {
  58. ItemName[i] = Item[i].Split('|')[0];
  59. ItemData[i] = Item[i].Split('|')[1];
  60. }
  61. }
  62. catch (Exception) { }
  63. for (int i = 0; i < Item.Length; i++)
  64. {
  65. for (int j = 0; j < Controls.Count; j++)
  66. {
  67. if (Controls[j].Name == ItemName[i])
  68. {
  69. Controls[j].Text = ItemData[i];
  70. }
  71. }
  72. }
  73. }
  74. private void Process_SizeChanged(object sender, EventArgs e)
  75. {
  76. asc.AutoSize(this);
  77. Title.Location = new Point(Line1.Location.X + (Line2.Location.X - Line1.Location.X - Title.Size.Width) / 2, TopLine.Location.Y + (BottomLine.Location.Y - TopLine.Location.Y - Title.Size.Height) / 2);
  78. Title2.Location = new Point(Title.Location.X, Title2.Location.Y);
  79. WorkShift_label.Location = new Point(Line2.Location.X + (Line3.Location.X - Line2.Location.X - WorkShift_label.Size.Width) / 2, MidLine.Location.Y + (BottomLine.Location.Y - MidLine.Location.Y - WorkShift_label.Size.Height) / 2);
  80. LineCode_label.Location = new Point(Line2.Location.X + (Line3.Location.X - Line2.Location.X - LineCode_label.Size.Width) / 2, TopLine.Location.Y + (MidLine.Location.Y - TopLine.Location.Y - LineCode_label.Size.Height) / 2);
  81. Line.Location = new Point(Line.Location.X, TopLine.Location.Y + (MidLine.Location.Y - TopLine.Location.Y - LineCode_label.Size.Height) / 2);
  82. 班制.Location = new Point(班制.Location.X, MidLine.Location.Y + (BottomLine.Location.Y - MidLine.Location.Y - WorkShift_label.Size.Height) / 2);
  83. Logo.Size = new Size(Line1.Location.X - 20, BottomLine.Location.Y - TopLine.Location.Y - 20);
  84. 机型.Location = new Point(机型_label.Location.X + 机型_label.Width + 30, 机型_label.Location.Y);
  85. 投入.Location = new Point(投入_label.Location.X + 机型_label.Width + 30, 投入_label.Location.Y);
  86. 产出.Location = new Point(产出_label.Location.X + 机型_label.Width + 30, 产出_label.Location.Y);
  87. 直通率.Location = new Point(直通率_label.Location.X + 直通率_label.Width + 30, 直通率_label.Location.Y);
  88. 收益率.Location = new Point(收益率_label.Location.X + 收益率_label.Width + 30, 收益率_label.Location.Y);
  89. 故障数.Location = new Point(故障数_label.Location.X + 故障数_label.Width + 30, 故障数_label.Location.Y);
  90. }
  91. private void Process_FormClosing(object sender, FormClosingEventArgs e)
  92. {
  93. Refresh.Stop();
  94. }
  95. private void Process_KeyDown(object sender, KeyEventArgs e)
  96. {
  97. if (e.KeyCode == Keys.Escape)
  98. {
  99. Close();
  100. }
  101. }
  102. }
  103. }