国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

人事管理系統實現(四)

2019-11-11 01:55:50
字體:
來源:轉載
供稿:網友

     在本節中我們將接著上幾節的內容繼續添加新的功能窗體,首先,我們要添加F_ClearData窗體,其次設計F_Stat窗體。F_ClearData窗體能夠實現針對不同等級的用戶實現不同的功能的限制,通過簡單的點選按鈕完成由權限限定的功能的設置,窗體的界面設計如下:

                                                                                  

    通過checkBox和Button按鈕的組合實現功能需求,當點擊全選,則會實現全部的CheckBox處于選中的狀態,當點擊清空時,則會清除所選定的CheckBox的選中狀態,因功能需求比較簡單,主要用到CheckBox 、GroupBox控件和Button控件。

    界面設計完成后,窗體的功能的實現,以及代碼的實現:

    1.首先定義一個MyModule類的對象,并實例化:   

   ModuleClass.MyModule MyMC = new ModuleClass.MyModule();    2.當點擊清空按鈕時,實現的功能是所有CheckBox都成為未選中狀態。實現的功能響應的事件處理代碼如下:

        PRivate void but_clear_Click(object sender, EventArgs e)        {            MyMC.Clear_Table(groupBox1.Controls, "Table_");        }      其中,Clear_Table()方法實在MyModule類中實現的,具體的實現方法將在MyModule類的設計中詳細介紹。

     3.實現全選的功能,這個功能需要實現此控件的MouseDown事件,不在實現其Click事件,當我們點選時,觸發的是MouseDown事件,而不是在這個控件上點擊所引發的Click事件,事件響應代碼如下:

        private void ALL_Table_MouseDown(object sender, MouseEventArgs e)        {            //設置一個狀態變量            bool tt = false;            if (((CheckBox)sender).Checked == true)                tt = false;            else                tt = true;            //遍歷groupBox1中所有控件,并修改對應狀態            foreach (Control C in groupBox1.Controls)            {                string sID = C.Name;                if (sID.IndexOf("Table_") > -1)                {                    ((CheckBox)C).Checked = tt;                }            }        }       4.在設計時,所有人員應該屬于其中的一個部門,當不進行部門類別的設置時,其他的類別是不能夠進行設置的,故在這里設計“部門類別”CheckBox控件的選中狀態來確定        是否其他的控件選項是個否可選,相當于一個開關功能,所以實現了這個控件的MouseUp事件,當鼠標的左鍵點松開后就可以進行選擇了(CheckBox的Checked屬性默認        為可選),事件的響應代碼如下:

        private void Table_Branch_MouseUp(object sender, MouseEventArgs e)        {            if (((CheckBox)sender).Checked == false)            {                ALL_Table.Checked = false;            }        }       當點擊退出時,其響應的Click事件相應程序中添加:this.Close();關閉窗口就可以了。

       接下來設計F_Stat窗體,這個窗體是進行簡單的人事資料統計統計使用的,通過拖拽控件進行界面設計,界面的設計如下:

                                                    

    設計較為簡單,使用了兩個GroupBox控件和一個listbox控件以及一個GridView控件來實現人事統計的功能。功能大體是通過左邊的listBox控件點選條件,右邊的GridView控件中,按照條件顯示對應的結果。

    在窗體進行加載時,需要完成一部分工作,窗體的Load事件如下:

        private void F_Stat_Load(object sender, EventArgs e)        {            listBox1.Items.Clear();            for (int i = 0; i < A_Value.Length; i++)                listBox1.Items.Add("按" + A_Value[i] + "統計");            Stat_Class(0);        }    這個加載事件可以將儲存在A_Value字段中的條件填充到ListBox里面,主要是Items.Clear()方法和Items.Add()方法的使用。同時,方法中調用了一個Stat_Class()方法,這個方法的設計如下:

        public void Stat_Class(int n)        {            MyDS_Grid = MyDataClass.GetDataSet("select " + A_Field[n] + " as '" + A_Value[n] + "', count(" + A_Field[n] + ")  as '人數' from tb_stuffbusic group by " + A_Field[n], "tb_Stuffbusic");            dataGridView1.DataSource = MyDS_Grid.Tables[0];            dataGridView1.Columns[0].Width = 120;            dataGridView1.Columns[1].Width = 55;        }    這個方法主要是結合相應的查詢條件,剩余的是對GridView中列的寬度的屬性設置,轉換為對應的查詢語句通過GetDataSet方法返回一個DataSet類型的返回值,GetDataSet方法實在MyMeans類中實現的,此方法的實現將會在后續進行補充。

     1.首先,定義字段以及對象的實例化:

        DataClass.MyMeans MyDataClass = new DataClass.MyMeans();        public static string Term_Field = "Folk,Age,Kultur,Marriage,Sex,Visage,WorkLength,Employee,Business,Laborage,Branch,Duthcall,School,Speciality,Pact_Y,BeAware,City";        public static string Term_Value = "民族類別,年齡,文化程度,婚姻,性別,政治面貌,工齡,職工類別,職務類別,工資類別,部門類別,職稱類別,畢業學校,主修專業,合同年限,籍貫所在省,籍貫所在市";        public static string[] A_Field = Term_Field.Split(Convert.ToChar(','));        public static string[] A_Value = Term_Value.Split(Convert.ToChar(','));        public static DataSet MyDS_Grid;       2.上述定義中存在一個轉換過程,將靜態變量Term_Field里面的字符按照“,”進行分割,用到了適用于字符串處理的split函數,和一個字符串轉換函數,Convert.ToChar(),按照同樣的方式,將Term_Value也進行了同樣的處理,這樣做可以較為方便進行更改,再添加內容時,不必改動程序中的其他部分。為了實現上述功能,完成點擊事件的相應,所以應設計其Click事件響應程序,利用listBox中selectedindex的值作為Stat_Class方法的參數值,代碼如下:

        private void listBox1_Click_1(object sender, EventArgs e)        {            Stat_Class(listBox1.SelectedIndex);        }    }

兩個窗體的基本設計已經完成,下一步我們將設計F_Find窗體。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西林县| 中宁县| 乃东县| 峨山| 庆元县| 台南市| 开平市| 奉新县| 南涧| 铜陵市| 兰考县| 沐川县| 贺兰县| 孝义市| 溧阳市| 永安市| 旌德县| 阳春市| 九江县| 个旧市| 航空| 临邑县| 芒康县| 分宜县| 小金县| 新源县| 济宁市| 共和县| 河曲县| 霸州市| 长春市| 延边| 都江堰市| 红河县| 康定县| 射阳县| 遵义县| 湟中县| 阿图什市| 金坛市| 盘锦市|