freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο笳n程設(shè)計---工資管理系統(tǒng)-wenkub

2023-06-18 12:18:52 本頁面
 

【正文】 020210)。 c[1].add(02021)。 c[0].add(按工號 )。i++) { c[i] = new Choice()。 布局設(shè)計的代碼和外層模塊設(shè)計的完全一樣,不再重復(fù), 代碼中有注明,下拉框是用一個Choice類型的數(shù)組來表示的,窗口顯示如圖 5。缺省情況下,即用戶什么都沒有選擇的情況下,直接點擊“查詢”按鈕后,將顯示全體員工的工資信息。 } 工資管理系統(tǒng) 9 / 67 查詢模塊設(shè)計 查詢模塊模樣 查詢模塊的模樣 如圖 4所示。 add(p[2])。 p[2].add(up,修改 )。//刪除模塊 p[2] = new Panel(myCard)。 本設(shè)計中, p[3]中各組件的顯示方式只有設(shè)置為按名顯示最為適合, 窗口的顯示如圖 3,創(chuàng)建到顯示的實現(xiàn)代碼如下: QueryPanel qp = new QueryPanel()。讓頁面看起來簡潔、清晰、明朗。 (p[1], gbc)。i4。 b[3] = new Button(刪除 )。//注冊監(jiān)聽 b[1] = new Button(儲存 )。并依次將該數(shù)組的每個按鈕加入到 Panel[1]中。 //將 gridbagconstraints對象與組建相聯(lián)系 add(p[0])。 并 用 GridBagLayout 的布局設(shè)計將 Panel1 加入到容器 MyApplet 中, 具體實現(xiàn)代碼如下: = 。 (new Font(Serif,50,50))。對 本容器采用 GridBagLayout的布局設(shè)計,按照上述的步驟: 創(chuàng)建 GridBagLayout 布局對象,即 GridBagLayout gbLayout = new GridBagLayout()。 為了使窗口中的標簽和文本框等東西的大小可以隨窗口的變大而變大,或者縮小而縮小,所以在外層容器里面的組件不是直接加入外層容器的,本質(zhì)是在外層容器中加入子容器,然后在子容器中加入組件。外層模塊 Myplet 子容器 Panel1 子容器 Panel2 子容器 Panel3 系統(tǒng)名稱:工資管理系統(tǒng) 查詢按鈕 儲存按鈕 修改按鈕 刪除按鈕 以卡片布局放置查詢、儲存、修改、刪除模塊,默認顯示查詢模塊 工資管理系統(tǒng) 5 / 67 GridLayout 的布局形式,雖然給了設(shè)計者自己定義布局的一部分功能,但是還是存在很大一部分的限制,還有 CardLayout(卡片布局設(shè)計)和 GridBagLayout,卡片布局設(shè)計顯然是可以采用的,但是不能只用卡片布局設(shè)計,因為只用它顯得單一,而且功能不全。 工資管理系統(tǒng) 4 / 67 2 詳細設(shè)計 外層模塊設(shè)計 外層模塊模樣 根據(jù)個人設(shè)計思路,設(shè)計的外側(cè)模塊的模樣如 圖 2 圖 2 外側(cè)模塊設(shè)計, 首先新建一個叫 MyApplet 的類,并繼承 java 下 applet 包中的 Applet類,在這里,也可以自己定義一個自己的框架的類,去繼承 Frame 類,但是簡單起見,我就定義了自己的框架的類,并繼承了 Applet 類,這樣有些 Applet 已經(jīng)實現(xiàn)的功能就不需要我自己去實現(xiàn)了,比如當你點擊這個類運行而得的窗口的右上角的“ X”時,窗口就關(guān)閉了,如果沒有繼承 Applet 類,那么這些功能將由自己實現(xiàn),查看 java 的那套 api 會發(fā)現(xiàn)里面有個一屬性常量,給定義的窗口設(shè)置該屬性就可以解決。 在此說明一點,由于工資總額是員工基礎(chǔ)工資、職務(wù)工資和獎金的綜合。 功能要求 ( 1) 查詢功能中,用戶查詢時可以選擇按工號查詢,也可以選擇姓名進行查詢, 也可以選擇查詢工資總額在某個范圍內(nèi)的員工的工資信息,比如查詢工資總額在 1000~2021 的全體員工的信息,還以查詢?nèi)w員工工資,并且選擇按某種方式排序 。 工資管理系統(tǒng) 1 / 67 1 需求分析 課題設(shè)計 目的 使用面向?qū)ο笳Z言 java 設(shè)計一個員工工資管理程序,有顯示、儲存、顯示、修改和刪除功能。 ( 2) 修改 功能中 ,用戶可以選擇修改方式,比如修改某一行,即選擇修改某個員工的工資,此時需要輸入修改項,即基礎(chǔ)工資、職務(wù)工資和獎金中的一項,因為工資總額是基礎(chǔ)工資、職務(wù)工資和獎金的綜合,故不能直接修改,同時還需要輸入工號,為了避免誤改,所以需要確認修改后才能修改;也可以選擇修改某一列,即選擇修改全體員工的某一項工資,所以還需要選擇修改項,其中的修改項也只有基礎(chǔ)工資、職務(wù)工資和獎金三項?;A(chǔ)工資、職務(wù)工資和獎金中的任意一項改變都會影響工資總額的數(shù)值,當修改頻繁是,將會大大增加數(shù)據(jù)庫系統(tǒng)的負擔,且設(shè)計起來更加繁瑣,所以工資總額并沒有真正的儲存在數(shù)據(jù)庫中, 每一次的查詢或者其他顯示工資總額的地方全都是用 SQL或者 HQL的函數(shù)查詢語句來實現(xiàn)的。 參考印旻主編的《 java 與面向?qū)ο蟪绦蛟O(shè)計教程》第八章的布局設(shè)計可知: FlowLayout的布局方式雖然非常簡單,但是這種布局的容器會將容器的里的組件按照加入的順序一個個從左往右, 從上往下的排列。剩下的GridBagLayout 的布局設(shè)計是很適合我想象的布局的,因為這種布局設(shè)計給了設(shè)計 者很大的自定義空間,并且各個行或者列的大小都可以由設(shè)計者自己指定,也不要求容器中的組件按個空格地放。 外層容器的對子容器放置的布局是 GridBagLayout 布局設(shè)計,而子容器中又使用簡單布局設(shè)計。 設(shè)置本容器為該布局對象,即 (gbLayout)。 ()。 //占據(jù)橫向剩余空間 = 1。 ( 4) 用 GridLayout的布局設(shè)計分別將查詢按鈕、儲存按鈕、修改按鈕和刪除按鈕加入Panel[1]中,然后用 GridBagLayout的布局設(shè)計將 Panel[1]加入 MyApplet中。其實現(xiàn)代碼如下: Button[] b = new Button[4]。 b[1].addActionListener(this)。 b[3].addActionListener(this)。i++){ p[1].add(b[i])。 add(p[1])。 CardLayout的使用步驟: 工資管理系統(tǒng) 7 / 67 ( 1) 創(chuàng)建一個 CardLayout對象作為布局編輯器 : Mycard = new CardLayout()。//查詢模塊 addPanel ap =new addPanel()。 p[2].setLayout(myCard)。 p[2].add(dp,刪除 )。 //事件處理:當用戶點擊四大功能按鈕時,下方顯示對應(yīng)的功能的子模塊 public void actionPerformed(ActionEvent e) { (p[2], ())。 圖 4 查詢模塊的設(shè)計,新建一個叫 QueryPanel的 java類,這各類也繼承了 Applet類,所以本身就是一個容器。 查詢方式下拉框中有按工號、按姓名和默認全部的選項;查詢范圍的下拉框中有各個階段范圍的對應(yīng)選擇,默認是范圍不限;排列下拉框中有按基礎(chǔ)工資、職務(wù)工資、獎金、工資總額和默認是工號的選項;排序下拉框中就升序和降序兩種選擇,默認是升序排序。 實現(xiàn)下拉框的代碼如下: Choice c[] = new Choice[5]。 c[i].addItemListener(this)。 c[0].add(按姓名 )。 c[1].add(20215000)。 c[1].add(20210)。 c[2].add(按基礎(chǔ)工資 )。 c[3].add(排序 )。 工資管理系統(tǒng) 11 / 67 圖 5 查詢模塊事件處理 該模塊中共有四個下拉框,一個工號輸入框,一個姓名輸入文本框和一個現(xiàn)實文本框,第一個個查詢方式下拉框。 else if(c[0].getSelectedIndex()==1){ ()。 else if(c[0].getSelectedIndex()==2){ ()。 圖 6 儲存模塊的設(shè)計 提示性標簽: 對應(yīng)的輸入框: 文本框,用來顯示剛才增加的用戶的信息 姓名 輸入信息 基礎(chǔ)工資 獎金 職務(wù)工資 按鈕 按鈕 工資管理系統(tǒng) 13 / 67 儲存模塊的設(shè)計,新建一個叫 AddPanel的 java類,繼承了 Applet類,采用的布局設(shè)計和查詢模塊的完全一樣,不再贅述。 實現(xiàn)代碼如下: L[0] = new Label(姓 名 )。 L[4] = new Label(輸入對應(yīng)信息 )。 (t[i])。 (new Label())。 儲存模 事件處理 本模塊共有四個輸入文本框,一個增加員工按鈕,一個清空按鈕和一個顯示文本框。操作實例如圖 7所示。i++) t[i].setText()。 }else name = t[0].getText()。 圖 8 修改模塊的設(shè)計,新建一個叫 UpdatePanel的 java類,布局設(shè)計同上。 修改模塊設(shè)計: 修改方式 修改項 輸入工號 輸入框 輸入框 輸入新值 修改按鈕 工資管理系統(tǒng) 16 / 67 圖 9 修改模塊 事件處理 當用戶點擊主模塊中的修改按鈕時,下方將顯示修改模塊的界面。即可;當用戶選擇修改行時重置過來即setFocusable(true)。 操作實例如圖 9, 關(guān)鍵代碼如下: int row。 } catch (NumberFormatException e1) { newValue = 1。amp。 //實例化一個對話框 Panel p1 = new Panel()。 (this)。 (Center,p1)。amp。 Panel p1 = new Panel()。 (this)。 (Center,p1)。 Panel p1 = new Panel()。 (Y)。 } } if(()==Yamp。 !(xx) amp。 newValue=0){//選擇修改行 ()。 Panel p2 = new Panel()。 (confirm)。 }else if(()==Y amp。 !(xx)amp。 row = (colum, newValue)。 confirm = new Button(確認 )。 ()。 Panel p2 = new Panel()。 (confirm)。 }else ()。刪除容器中加入了一個子容器 select, Panel select中加入了提示輸入工號的標簽、工輸入框、空標簽和刪除按鈕;下方是一個和 select平級的文本框,用來顯示用戶刪除的員工的 信息。操作實例如圖 12,關(guān)鍵代碼如下: if(()==刪除 ){ try { int a = (())。 } y_n = new Dialog(,確定刪除? ,true)。 N = new Button(no)。 (N)。 } if(()==Y){ ()。 Panel p2 = new Panel()。 (confirm)。 }else{ success = new Dialog(,刪
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1