正文

進(jìn)銷(xiāo)存管理系統(tǒng)(12)

Java項(xiàng)目開(kāi)發(fā)案例全程實(shí)錄(第2版) 作者:明日科技


1.7.4 供應(yīng)商修改與刪除實(shí)現(xiàn)過(guò)程

供應(yīng)商修改與刪除使用的數(shù)據(jù)表:tb_gysinfo。

(1)創(chuàng)建GysXiuGaiPanel類(lèi),用于實(shí)現(xiàn)本系統(tǒng)的供應(yīng)商修改功能。在程序界面中有多個(gè)用于輸入供應(yīng)商信息的文本框,這些文本框的內(nèi)容會(huì)根據(jù)所選供應(yīng)商自動(dòng)填充,修改部分或全部?jī)?nèi)容后,單擊“修改”按鈕將修改供應(yīng)商數(shù)據(jù)。界面中定義的主要控件如表1.7所示。

 

(2)編寫(xiě)initComboBox()方法,用于初始化“選擇供應(yīng)商”下拉列表框。該方法調(diào)用Dao類(lèi)的getGysInfos()方法獲取數(shù)據(jù)庫(kù)中所有的供應(yīng)商信息,然后將供應(yīng)商的ID編號(hào)和供應(yīng)商名稱(chēng)封裝成Item對(duì)象并添加到“選擇供應(yīng)商”下拉列表框中,在下拉列表框中Item的toString()方法將顯示供應(yīng)商的名稱(chēng)。initComboBox()方法的關(guān)鍵代碼如下:

例程18  代碼位置:光盤(pán)\TM\01\JXCManager\src\internalFrame\gysGuanLi\GysXiuGaiPanel.java

public void initComboBox() { //初始化供應(yīng)商下拉列表框的方法

List gysInfo = Dao.getGysInfos(); //調(diào)用getGysInfos()方法獲取供應(yīng)商列表

List<Item> items = new ArrayList<Item>(); //創(chuàng)建Item列表

gys.removeAllItems(); //清除下拉列表框中原有的選項(xiàng)

for (Iterator iter = gysInfo.iterator(); iter.hasNext();) {

List element = (List) iter.next();

Item item = new Item(); //封裝供應(yīng)商信息

item.setId(element.get(0).toString().trim());

item.setName(element.get(1).toString().trim());

if (items.contains(item)) //如果 Items 列表中包含該供應(yīng)商的封裝對(duì)象

continue; //跳出本次循環(huán)

items.add(item);

gys.addItem(item); //否則添加該對(duì)象到下拉列表框中

}

doGysSelectAction(); //doGysSelectAction() 方法

}

(3)編寫(xiě)doGysSelectAction()方法,它在更改下拉列表框中的供應(yīng)商信息時(shí)被調(diào)用,主要用于根據(jù)選擇的供應(yīng)商名稱(chēng),把供應(yīng)商的其他信息填充到相應(yīng)的文本框中。關(guān)鍵代碼如下:

例程19  代碼位置:光盤(pán)\TM\01\JXCManager\src\internalFrame\gysGuanLi\GysXiuGaiPanel.java

private void doGysSelectAction() { //處理供應(yīng)商選擇事件

Item selectedItem;

if (!(gys.getSelectedItem() instanceof Item)) {

return;

}

selectedItem = (Item) gys.getSelectedItem(); //獲取 Item 對(duì)象

TbGysinfo gysInfo = Dao.getGysInfo(selectedItem); //通過(guò) Item 對(duì)象調(diào)用 getGysInfo() 方法獲取供應(yīng)商信息

quanChengF.setText(gysInfo.getName()); //填充供應(yīng)商信息到文本框中

diZhiF.setText(gysInfo.getAddress());

jianChengF.setText(gysInfo.getJc());

bianMaF.setText(gysInfo.getBianma());

dianHuaF.setText(gysInfo.getTel());

chuanZhenF.setText(gysInfo.getFax());

lianXiRenF.setText(gysInfo.getLian());

lianXiRenDianHuaF.setText(gysInfo.getLtel());

EMailF.setText(gysInfo.getMail());

yinHangF.setText(gysInfo.getYh());

}

 


上一章目錄下一章

Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)