123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Data.SQLite;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using PaintDotNet.Base.CommTool;
- using PaintDotNet.Data.Param;
- namespace PaintDotNet.GeneralAnalysis.Countometer
- {
- public class HotKeySetingDialog : PdnBaseForm
- {
- #region
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
- #region Windows Form Designer generated code
- private void InitializeLanguageText()
- {
- this.label1.Text = PdnResources.GetString("Menu.organizationname.text") + ":";
- this.hotKey.HeaderText = PdnResources.GetString("Menu.icon.text");
- this.name.HeaderText = PdnResources.GetString("Menu.name.text");
- this.direction.HeaderText = PdnResources.GetString("Menu.Generalanalysis.Integrator.action.text");
- this.isCount.HeaderText = PdnResources.GetString("Menu.Generalanalysis.Integrator.Whetherstatistics.text");
- this.isDel.HeaderText = PdnResources.GetString("Menu.operation.text");
- this.isDel.Text = PdnResources.GetString("Menu.Edit.Delete.Text");
- this.Text = PdnResources.GetString("Menu.Keyboarddefinition.text");
- this.groupBox1.Text = PdnResources.GetString("Menu.operation.text");
- this.btnSaveAs.Text = PdnResources.GetString("Menu.Generalanalysis.Integrator.Saveas.text");
- this.btnClose.Text = PdnResources.GetString("Menu.File.Close.Text");
- this.btnSave.Text = PdnResources.GetString("Menu.File.Save.Text");
- this.groupBox2.Text = PdnResources.GetString("Menu.Keyboarddefinition.text");
- this.btnAdd.Text = PdnResources.GetString("Menu.Addto.text");
- this.label2.Text = PdnResources.GetString("Menu.Generalanalysis.Integrator.definequantity.text") + ":";
- this.direction.Items.AddRange(new object[] {
- "",
- PdnResources.GetString("Menu.Weightmeasurement.Text"),
- PdnResources.GetString("Menu.skip.Text")});
- }
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.btnSaveAs = new System.Windows.Forms.Button();
- this.btnClose = new System.Windows.Forms.Button();
- this.btnSave = new System.Windows.Forms.Button();
- this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.dgvKeyList = new System.Windows.Forms.DataGridView();
- this.btnAdd = new System.Windows.Forms.Button();
- this.txtAddNum = new System.Windows.Forms.TextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.txtTissuesName = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
- this.isDel = new System.Windows.Forms.DataGridViewLinkColumn();
- this.isCount = new System.Windows.Forms.DataGridViewCheckBoxColumn();
- this.direction = new System.Windows.Forms.DataGridViewComboBoxColumn();
- this.name = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.hotKey = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.id = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.groupBox1.SuspendLayout();
- this.groupBox2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.dgvKeyList)).BeginInit();
- this.SuspendLayout();
- //
- // groupBox1
- //
- this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.groupBox1.Controls.Add(this.btnSaveAs);
- this.groupBox1.Controls.Add(this.btnClose);
- this.groupBox1.Controls.Add(this.btnSave);
- this.groupBox1.Location = new System.Drawing.Point(12, 12);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(608, 71);
- this.groupBox1.TabIndex = 1;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "操作";
- //
- // btnSaveAs
- //
- this.btnSaveAs.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.btnSaveAs.Location = new System.Drawing.Point(292, 24);
- this.btnSaveAs.Name = "btnSaveAs";
- this.btnSaveAs.Size = new System.Drawing.Size(84, 31);
- this.btnSaveAs.TabIndex = 2;
- this.btnSaveAs.Text = "另存";
- this.btnSaveAs.UseVisualStyleBackColor = true;
- this.btnSaveAs.Click += new System.EventHandler(this.btnSaveAs_Click);
- //
- // btnClose
- //
- this.btnClose.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.btnClose.Location = new System.Drawing.Point(504, 24);
- this.btnClose.Name = "btnClose";
- this.btnClose.Size = new System.Drawing.Size(84, 31);
- this.btnClose.TabIndex = 1;
- this.btnClose.Text = "关闭";
- this.btnClose.UseVisualStyleBackColor = true;
- this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
- //
- // btnSave
- //
- this.btnSave.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.btnSave.Location = new System.Drawing.Point(398, 24);
- this.btnSave.Name = "btnSave";
- this.btnSave.Size = new System.Drawing.Size(84, 31);
- this.btnSave.TabIndex = 0;
- this.btnSave.Text = "保存";
- this.btnSave.UseVisualStyleBackColor = true;
- this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
- //
- // groupBox2
- //
- this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.groupBox2.Controls.Add(this.dgvKeyList);
- this.groupBox2.Controls.Add(this.btnAdd);
- this.groupBox2.Controls.Add(this.txtAddNum);
- this.groupBox2.Controls.Add(this.label2);
- this.groupBox2.Controls.Add(this.txtTissuesName);
- this.groupBox2.Controls.Add(this.label1);
- this.groupBox2.Location = new System.Drawing.Point(12, 89);
- this.groupBox2.Name = "groupBox2";
- this.groupBox2.Size = new System.Drawing.Size(608, 521);
- this.groupBox2.TabIndex = 2;
- this.groupBox2.TabStop = false;
- this.groupBox2.Text = "键盘定义";
- //
- // dgvKeyList
- //
- this.dgvKeyList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.dgvKeyList.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
- this.dgvKeyList.ColumnHeadersHeight = 20;
- this.dgvKeyList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
- this.id,
- this.hotKey,
- this.name,
- this.direction,
- this.isCount,
- this.isDel});
- this.dgvKeyList.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
- this.dgvKeyList.Location = new System.Drawing.Point(18, 79);
- this.dgvKeyList.Name = "dgvKeyList";
- this.dgvKeyList.RowHeadersVisible = false;
- this.dgvKeyList.RowHeadersWidth = 51;
- this.dgvKeyList.RowTemplate.Height = 20;
- this.dgvKeyList.Size = new System.Drawing.Size(570, 423);
- this.dgvKeyList.TabIndex = 5;
- this.dgvKeyList.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvKeyList_CellClick);
- this.dgvKeyList.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvKeyList_CellContentClick);
- this.dgvKeyList.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvKeyList_CellValueChanged);
- this.dgvKeyList.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dgvKeyList_KeyDown);
- //
- // btnAdd
- //
- this.btnAdd.Location = new System.Drawing.Point(442, 24);
- this.btnAdd.Name = "btnAdd";
- this.btnAdd.Size = new System.Drawing.Size(84, 33);
- this.btnAdd.TabIndex = 4;
- this.btnAdd.Text = "添加";
- this.btnAdd.UseVisualStyleBackColor = true;
- this.btnAdd.Click += new System.EventHandler(this.btnAdd_Click);
- //
- // txtAddNum
- //
- this.txtAddNum.Location = new System.Drawing.Point(347, 29);
- this.txtAddNum.Name = "txtAddNum";
- this.txtAddNum.Size = new System.Drawing.Size(77, 21);
- this.txtAddNum.TabIndex = 3;
- this.txtAddNum.TextChanged += new System.EventHandler(this.txtAddNum_TextChanged);
- this.txtAddNum.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtAddNum_KeyPress);
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(255, 35);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(65, 12);
- this.label2.TabIndex = 2;
- this.label2.Text = "定义数量:";
- //
- // txtTissuesName
- //
- this.txtTissuesName.Location = new System.Drawing.Point(94, 29);
- this.txtTissuesName.Name = "txtTissuesName";
- this.txtTissuesName.Size = new System.Drawing.Size(145, 21);
- this.txtTissuesName.TabIndex = 1;
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(15, 35);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(65, 12);
- this.label1.TabIndex = 0;
- this.label1.Text = "组织名称:";
- //
- // isDel
- //
- dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- this.isDel.DefaultCellStyle = dataGridViewCellStyle4;
- this.isDel.MinimumWidth = 6;
- this.isDel.Name = "isDel";
- this.isDel.Resizable = System.Windows.Forms.DataGridViewTriState.True;
- this.isDel.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
- this.isDel.UseColumnTextForLinkValue = true;
- //
- // isCount
- //
- this.isCount.MinimumWidth = 6;
- this.isCount.Name = "isCount";
- this.isCount.Resizable = System.Windows.Forms.DataGridViewTriState.True;
- this.isCount.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
- //
- // direction
- //
- this.direction.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.direction.DefaultCellStyle = dataGridViewCellStyle3;
- this.direction.MinimumWidth = 6;
- this.direction.Name = "direction";
- this.direction.Resizable = System.Windows.Forms.DataGridViewTriState.True;
- this.direction.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
- //
- // name
- //
- this.name.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- this.name.MinimumWidth = 6;
- this.name.Name = "name";
- //
- // hotKey
- //
- this.hotKey.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 10.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
- dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
- this.hotKey.DefaultCellStyle = dataGridViewCellStyle2;
- this.hotKey.MinimumWidth = 6;
- this.hotKey.Name = "hotKey";
- this.hotKey.ReadOnly = true;
- this.hotKey.Resizable = System.Windows.Forms.DataGridViewTriState.True;
- //
- // id
- //
- this.id.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- this.id.DefaultCellStyle = dataGridViewCellStyle1;
- this.id.HeaderText = "id";
- this.id.MinimumWidth = 6;
- this.id.Name = "id";
- this.id.Visible = false;
- //
- // HotKeySetingDialog
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(632, 622);
- this.Controls.Add(this.groupBox2);
- this.Controls.Add(this.groupBox1);
- this.Name = "HotKeySetingDialog";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "键盘定义";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.HotKeySetingDialog_FormClosing);
- this.Controls.SetChildIndex(this.groupBox1, 0);
- this.Controls.SetChildIndex(this.groupBox2, 0);
- this.groupBox1.ResumeLayout(false);
- this.groupBox2.ResumeLayout(false);
- this.groupBox2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.dgvKeyList)).EndInit();
- this.ResumeLayout(false);
- }
- #endregion
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.Button btnSaveAs;
- private System.Windows.Forms.Button btnClose;
- private System.Windows.Forms.Button btnSave;
- private System.Windows.Forms.GroupBox groupBox2;
- private System.Windows.Forms.DataGridView dgvKeyList;
- private System.Windows.Forms.Button btnAdd;
- private System.Windows.Forms.TextBox txtAddNum;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.TextBox txtTissuesName;
- private System.Windows.Forms.Label label1;
- #endregion
- /// <summary>
- /// 网格调色板
- /// </summary>
- PaintDotNet.ColorsForm colorsFormGrid;
- /// <summary>
- /// 矩形调色板
- /// </summary>
- PaintDotNet.ColorsForm colorsFormRect;
- /// <summary>
- /// 圆形调色板
- /// </summary>
- PaintDotNet.ColorsForm colorsFormCircular;
- private SQLiteHelper m_sqlHelper;
- private string m_tissuesId;
- private DataTable m_hotKeyList;
- private DataTable m_tissuesList;
- private int m_rowIndex = -1;
- private int m_columnIndex = -1;
- private DataGridViewTextBoxColumn id;
- private DataGridViewTextBoxColumn hotKey;
- private DataGridViewTextBoxColumn name;
- private DataGridViewComboBoxColumn direction;
- private DataGridViewCheckBoxColumn isCount;
- private DataGridViewLinkColumn isDel;
- private Form m_parentForm;
- public HotKeySetingDialog(Form form, string id)
- {
- m_parentForm = form;
- m_tissuesId = id;
- InitializeComponent();
- InitializeLanguageText();
- InitializeData();
- this.colorsFormGrid = new ColorsForm();
- this.colorsFormGrid.StartPosition = FormStartPosition.CenterScreen;
- this.colorsFormGrid.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
- this.colorsFormRect = new ColorsForm();
- this.colorsFormRect.StartPosition = FormStartPosition.CenterScreen;
- this.colorsFormRect.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
- this.colorsFormCircular = new ColorsForm();
- this.colorsFormCircular.StartPosition = FormStartPosition.CenterScreen;
- this.colorsFormCircular.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
- }
- private void InitializeData()
- {
- dgvKeyList.DefaultCellStyle.SelectionBackColor = dgvKeyList.DefaultCellStyle.BackColor;
- dgvKeyList.DefaultCellStyle.SelectionForeColor = dgvKeyList.DefaultCellStyle.ForeColor;
- dgvKeyList.AllowUserToAddRows = false;
- dgvKeyList.AutoGenerateColumns = false;
- m_sqlHelper = new SQLiteHelper(); //连接数据库
- m_sqlHelper.Connect();
- // 组织信息
- string select_sql1 = "select * from mic_tissues where delete_flag = 0 and id = '" + m_tissuesId +"'"; //查询的SQL语句
- m_tissuesList = m_sqlHelper.ExecuteDataTable(select_sql1, null); //执行查询操作,结果存放在dt中
- txtTissuesName.Text = m_tissuesList.Rows[0]["tissue_name"].ToString();
- // 按键设置列表
- string select_sql = "select * from mic_tissues_key where delete_flag = 0 and tissue_id = '" + m_tissuesId + "'"; //查询的SQL语句
- m_hotKeyList = m_sqlHelper.ExecuteDataTable(select_sql, null); //执行查询操作,结果存放在dt中
- DrawDgvKeyList();
- }
- private void DrawDgvKeyList()
- {
- this.dgvKeyList.Rows.Clear();
- if(m_hotKeyList.Rows.Count > 0)
- {
- dgvKeyList.Rows.Add(m_hotKeyList.Rows.Count);
- for (int i = 0; i < m_hotKeyList.Rows.Count; ++i)
- {
- dgvKeyList.Rows[i].Cells["id"].Value = m_hotKeyList.Rows[i]["id"].ToString();
- Color bgColor = ColorTranslator.FromHtml(m_hotKeyList.Rows[i]["color"].ToString());
- dgvKeyList.Rows[i].Cells["hotKey"].Value = m_hotKeyList.Rows[i]["hot_key"].ToString();
- dgvKeyList.Rows[i].Cells["hotKey"].Style.BackColor = bgColor;
- dgvKeyList.Rows[i].Cells["hotKey"].Style.ForeColor = Color.White;
- dgvKeyList.Rows[i].Cells["hotKey"].Style.SelectionBackColor = bgColor;
- dgvKeyList.Rows[i].Cells["hotKey"].Style.SelectionForeColor = Color.White;
- dgvKeyList.Rows[i].Cells["name"].Value = m_hotKeyList.Rows[i]["name"].ToString();
- dgvKeyList.Rows[i].Cells["direction"].Value = m_hotKeyList.Rows[i]["direction"].ToString();
- if (m_hotKeyList.Rows[i]["is_count"].ToString().Equals("1"))
- {
- dgvKeyList.Rows[i].Cells["isCount"].Value = true;
- }
- else
- {
- dgvKeyList.Rows[i].Cells["isCount"].Value = false;
- }
- }
- }
- }
- /// <summary>
- /// 调色板回调函数
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="ce"></param>
- private void colorsFormUserPrimaryColorChanged(object sender, ColorEventArgs ce)
- {
- }
- private void ShowColorsForm(int rowIndex)
- {
- Color color = Color.White;
- if (rowIndex < m_hotKeyList.Rows.Count)
- {
- for (int i = 0; i < m_hotKeyList.Rows.Count; ++i)
- {
- if (i == rowIndex)
- {
- string c = m_hotKeyList.Rows[i]["color"].ToString();
- if (!string.IsNullOrEmpty(c))
- {
- color = ColorTranslator.FromHtml(c);
- }
- }
- }
- }
- this.colorsFormGrid.UserPrimaryColor = ColorBgra.FromColor(color);
- //this.colorsFormGrid.setSaveBtn_Click(new System.EventHandler(this.gridColorChanged));
- this.colorsFormGrid.ShowDialog();
- }
- /// <summary>
- /// 网格Panel的调色板颜色改变
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void gridColorChanged(object sender, EventArgs e)
- {
- Color color = this.colorsFormGrid.UserPrimaryColor.ToColor();
- m_hotKeyList.Rows[m_rowIndex]["color"] = ColorTranslator.ToHtml(color);
- this.colorsFormGrid.Close();
- dgvKeyList.Rows[m_rowIndex].Cells[1].Style.BackColor = color;
- dgvKeyList.Rows[m_rowIndex].Cells[1].Style.ForeColor = Color.White;
- dgvKeyList.Rows[m_rowIndex].Cells[1].Style.SelectionBackColor = color;
- dgvKeyList.Rows[m_rowIndex].Cells[1].Style.SelectionForeColor = Color.White;
- }
- private void txtAddNum_KeyPress(object sender, KeyPressEventArgs e)
- {
- TextBox textBox = (TextBox)sender;
- if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) && (int)e.KeyChar != 8)
- e.Handled = true;
- }
- private void btnAdd_Click(object sender, EventArgs e)
- {
- if (string.IsNullOrEmpty(txtAddNum.Text.Trim()))
- {
- MessageBox.Show(PdnResources.GetString("Menu.Pleaseaddquantityfirst.text"));
- return;
- }
- //获取表行数
- int sum = dgvKeyList.Rows.Count;
-
- string maxName = PdnResources.GetString("Menu.organization.text");
- int num = int.Parse(txtAddNum.Text.Trim());
- if (num > 0)
- {
- dgvKeyList.Rows.Add(num);
- }
- for (int i = 0; i < num; ++i)
- {
- m_hotKeyList.Rows.Add(0, m_tissuesId, "", "", "White", 0, "");
- }
- for (int i = 0; i < num; ++i)
- {
- Thread.Sleep(50);
- Color colorRandom = new Color();
- colorRandom = GetRandomColor();
- dgvKeyList.Rows[sum+i].Cells[1].Style.BackColor = colorRandom;
- dgvKeyList.Rows[sum + i].Cells[1].Style.SelectionBackColor = colorRandom;
- dgvKeyList.Rows[sum + i].Cells[1].Style.ForeColor = Color.White;
- dgvKeyList.Rows[sum + i].Cells[1].Style.SelectionForeColor = Color.White;
- dgvKeyList.Rows[sum + i].Cells[2].Value = maxName + (1 + sum + i);
- m_hotKeyList.Rows[sum + i]["color"] = ColorTranslator.ToHtml(colorRandom);
- m_hotKeyList.Rows[sum + i]["name"] = maxName + (1 + sum + i);
- }
-
- }
- /// <summary>
- /// 生成随机的颜色信息
- /// </summary>
- /// <returns>生成结果示例:#FF5A5E #F7464A</returns>
- public Color GetRandomColor()
- {
- // 随机数
- Random rnd = new Random();
- // 随机色
- Color myColor = System.Drawing.Color.FromArgb(
- rnd.Next(0, 255), /*红色*/
- rnd.Next(0, 255), /*绿色*/
- rnd.Next(0, 255) /*蓝色*/ );
- return myColor;
- }
- private void txtAddNum_TextChanged(object sender, EventArgs e)
- {
- }
- private void dgvKeyList_CellClick(object sender, DataGridViewCellEventArgs e)
- {
- m_rowIndex = e.RowIndex;
- m_columnIndex = e.ColumnIndex;
- // 点击图标
- if (dgvKeyList.Columns[e.ColumnIndex].Name == "hotKey" && e.RowIndex >= 0)
- {
- dgvKeyList.Columns[e.ColumnIndex].DefaultCellStyle.SelectionBackColor = dgvKeyList.Columns[e.ColumnIndex].DefaultCellStyle.BackColor;
- //ShowColorsForm(m_rowIndex);
- }
- }
- private void dgvKeyList_CellContentClick(object sender, DataGridViewCellEventArgs e)
- {
- // 修改显示是否统计
- if (dgvKeyList.Columns[e.ColumnIndex].Name == "isCount" && e.RowIndex >= 0)
- {
- bool selectValue = Convert.ToBoolean(dgvKeyList.Rows[e.RowIndex].Cells[e.ColumnIndex].EditedFormattedValue);
- m_hotKeyList.Rows[e.RowIndex]["is_count"] = selectValue ? 1 : 0;
- }
- //点击删除
- if (dgvKeyList.Columns[e.ColumnIndex].Name == "isDel" && e.RowIndex >= 0)
- {
- int index = -1;
- for (int i = 0; i < m_hotKeyList.Rows.Count; i++)
- {
- if (m_hotKeyList.Rows[i]["delete_flag"].ToString() != "1")
- {
- index++;
- }
- if (index == e.RowIndex)
- {
- m_hotKeyList.Rows[i]["delete_flag"] = 1;
- break;
- }
- }
-
- //m_hotKeyList.Rows.RemoveAt(e.RowIndex);
- dgvKeyList.Rows.RemoveAt(e.RowIndex);
- }
- }
- private void dgvKeyList_KeyDown(object sender, KeyEventArgs e)
- {
- if(m_columnIndex != 1)
- {
- return;
- }
- string keyString = e.KeyCode.ToString();
- if (keyString.Equals("ControlKey"))
- {
- keyString = "Control";
- }
- if (keyString.Equals("Menu"))
- {
- keyString = "Alt";
- }
- if (!keyString.Equals(""))
- {
- for (int i = 0; i < m_hotKeyList.Rows.Count; ++i)
- {
- if (m_hotKeyList.Rows[i]["delete_flag"].ToString().Equals("0"))
- {
- string s = m_hotKeyList.Rows[i]["hot_key"].ToString();
- if (keyString.Equals(s))
- {
- MessageBox.Show(PdnResources.GetString("Menu.user-defineepeated.text"));
- return;
- }
- }
- }
- m_hotKeyList.Rows[m_rowIndex]["hot_key"] = keyString;
- m_hotKeyList.Rows[m_rowIndex]["delete_flag"] = "0";
- dgvKeyList.Rows[m_rowIndex].Cells[m_columnIndex].Value = keyString;
- }
- }
- private void dgvKeyList_CellValueChanged(object sender, DataGridViewCellEventArgs e)
- {
- if(m_rowIndex < 0 || m_columnIndex < 0)
- {
- return;
- }
- // 修改名称
- if (dgvKeyList.Columns[e.ColumnIndex].Name == "name" && e.RowIndex >= 0)
- {
- m_hotKeyList.Rows[m_rowIndex]["name"] = dgvKeyList.Rows[m_rowIndex].Cells[m_columnIndex].Value;
- }
- // 设置方向
- if (dgvKeyList.Columns[e.ColumnIndex].Name == "direction" && e.RowIndex >= 0)
- {
- m_hotKeyList.Rows[m_rowIndex]["direction"] = dgvKeyList.Rows[m_rowIndex].Cells[m_columnIndex].Value;
- }
- }
- private void HotKeySetingDialog_FormClosing(object sender, FormClosingEventArgs e)
- {
- m_sqlHelper.DisConnect();
- }
- private void btnClose_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- private void btnSave_Click(object sender, EventArgs e)
- {
- if (m_hotKeyList.Rows.Count <= 0)
- {
- MessageBox.Show(PdnResources.GetString("Menu.Pleaseangsfirst.text"));
- return;
- }
- // 是否更新组织名称
- string tissuesName = txtTissuesName.Text.Trim();
- if (tissuesName != m_tissuesList.Rows[0]["tissue_name"].ToString())
- {
- if (string.IsNullOrWhiteSpace(tissuesName) || string.IsNullOrEmpty(tissuesName))
- {
- MessageBox.Show(PdnResources.GetString("Menu.Organiotbeempty.text"));
- return;
- }
- string update_sql = "update mic_tissues set tissue_name = ? where id = ?"; //SQL语句(带参数)
- SQLiteParameter[] para = new SQLiteParameter[2]; //构造并绑定参数
- string[] tag = { "tissue_name", "id" };
- Object[] value = { tissuesName, m_tissuesId };
- for (int i = 0; i < 2; i++)
- {
- para[i] = new SQLiteParameter(tag[i], value[i]);
- }
- m_sqlHelper.ExecuteNonQuery(update_sql, para); //执行更新操作
- }
- // 更新或添加按键设置
- for (int i = 0; i < m_hotKeyList.Rows.Count; ++i)
- {
- // 插入
- if (m_hotKeyList.Rows[i]["id"].ToString().Equals("0"))
- {
- // 新增加又删除的跳过
- if (m_hotKeyList.Rows[i]["delete_flag"].ToString().Equals("1") || m_hotKeyList.Rows[i]["hot_key"].ToString().Equals(""))
- {
- continue;
- }
- string insert_sql = "insert into mic_tissues_key(tissue_id, name, hot_key, color, is_count, direction, delete_flag) values(?,?,?,?,?,?,0)"; //插入的SQL语句(带参数)
- SQLiteParameter[] para = new SQLiteParameter[6]; //构造并绑定参数
- string[] tag = { "tissue_id", "name", "hot_key", "color", "is_count", "direction" };
- Object[] value = { m_hotKeyList.Rows[i]["tissue_id"].ToString(), m_hotKeyList.Rows[i]["name"].ToString(), m_hotKeyList.Rows[i]["hot_key"].ToString(), m_hotKeyList.Rows[i]["color"].ToString(), m_hotKeyList.Rows[i]["is_count"].ToString(), m_hotKeyList.Rows[i]["direction"].ToString() };
- for (int t = 0; t < 6; t++)
- {
- para[t] = new SQLiteParameter(tag[t], value[t]);
- }
- m_sqlHelper.ExecuteNonQuery(insert_sql, para); //执行插入操作
- }
- else
- {
- if (m_hotKeyList.Rows[i]["delete_flag"].ToString().Equals("1"))
- {
- string delete_sql = "delete from mic_tissues_key where id = " + m_hotKeyList.Rows[i]["id"].ToString();
- m_sqlHelper.ExecuteNonQuery(delete_sql, null);
- continue;
- }
- string update_sql = "update mic_tissues_key set tissue_id = ?, name = ?, hot_key = ?, color = ?, is_count = ?, direction = ?, delete_flag = ? where id = ?"; //更新的SQL语句(带参数)
- SQLiteParameter[] para = new SQLiteParameter[8]; //构造并绑定参数
- string[] tag = { "tissue_id", "name", "hot_key", "color", "is_count", "direction", "delete_flag", "id" };
- Object[] value = { m_hotKeyList.Rows[i]["tissue_id"].ToString(), m_hotKeyList.Rows[i]["name"].ToString(), m_hotKeyList.Rows[i]["hot_key"].ToString(), m_hotKeyList.Rows[i]["color"].ToString(), m_hotKeyList.Rows[i]["is_count"].ToString(), m_hotKeyList.Rows[i]["direction"].ToString(), m_hotKeyList.Rows[i]["delete_flag"].ToString(), m_hotKeyList.Rows[i]["id"].ToString() };
- for (int t = 0; t < 8; t++)
- {
- para[t] = new SQLiteParameter(tag[t], value[t]);
- }
- m_sqlHelper.ExecuteNonQuery(update_sql, para); //执行更细操作
- }
- }
- ((GeneralCountometerDialog)m_parentForm).TissuesKeyRefresh();
- //MessageBox.Show(PdnResources.GetString("Menu.Successfullysaved.text"));
- this.Close();
- }
- private void btnSaveAs_Click(object sender, EventArgs e)
- {
- string tissuesName = txtTissuesName.Text.Trim();
- if (string.IsNullOrWhiteSpace(tissuesName) || string.IsNullOrEmpty(tissuesName))
- {
- MessageBox.Show(PdnResources.GetString("Menu.Organiotbeempty.text"));
- return;
- }
- if (m_hotKeyList.Rows.Count <= 0)
- {
- MessageBox.Show(PdnResources.GetString("Menu.Pleaseangsfirst.text"));
- return;
- }
- // 保存组织名称
- string tissueId = System.Guid.NewGuid().ToString("N");
- string insert_sql = "insert into mic_tissues(id,tissue_name, delete_flag) values(?,?,0)"; //插入的SQL语句(带参数)
- SQLiteParameter[] para = new SQLiteParameter[2]; //构造并绑定参数
- string[] tag = { "id", "tissue_name" };
- Object[] value = { tissueId, tissuesName };
- for (int i = 0; i < 2; i++)
- {
- para[i] = new SQLiteParameter(tag[i], value[i]);
- }
- m_sqlHelper.ExecuteNonQuery(insert_sql, para); //执行插入操作
-
- for (int i = 0; i < m_hotKeyList.Rows.Count; ++i)
- {
- // 新增加又删除的跳过
- if (m_hotKeyList.Rows[i]["delete_flag"].ToString().Equals("1") || m_hotKeyList.Rows[i]["hot_key"].ToString().Equals(""))
- {
- continue;
- }
- // 插入
- insert_sql = "insert into mic_tissues_key(tissue_id, name, hot_key, color, is_count, direction, delete_flag) values(?,?,?,?,?,?,0)"; //插入的SQL语句(带参数)
- para = new SQLiteParameter[6]; //构造并绑定参数
- string[] tag2 = { "tissue_id", "name", "hot_key", "color", "is_count", "direction" };
- Object[] value2 = { tissueId, m_hotKeyList.Rows[i]["name"].ToString(), m_hotKeyList.Rows[i]["hot_key"].ToString(), m_hotKeyList.Rows[i]["color"].ToString(), m_hotKeyList.Rows[i]["is_count"].ToString(), m_hotKeyList.Rows[i]["direction"].ToString() };
- for (int t = 0; t < 6; t++)
- {
- para[t] = new SQLiteParameter(tag2[t], value2[t]);
- }
- m_sqlHelper.ExecuteNonQuery(insert_sql, para); //执行插入操作
- }
- ((GeneralCountometerDialog)m_parentForm).TissuesListLoad();
- //MessageBox.Show(PdnResources.GetString("Menu.Successfullysaved.text"));
- this.Close();
- }
-
- }
- }
|