版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目七利用JTable
創(chuàng)建學(xué)生信息表1四、預(yù)備知識(shí)JTable簡(jiǎn)介支持許多復(fù)雜的定制Swing中功能最強(qiáng)大的單一組件
JTable
發(fā)揮其全部潛能的最富挑戰(zhàn)性的組件之一
位于javax.swing包中
創(chuàng)建、顯示和管理表格
2四、預(yù)備知識(shí)(1)創(chuàng)建所顯示的數(shù)據(jù)的一個(gè)數(shù)組。(2)創(chuàng)建列標(biāo)題的一個(gè)數(shù)組。(3)創(chuàng)建JTable的一個(gè)實(shí)例(對(duì)象),指定數(shù)據(jù)和標(biāo)題。(4)在多數(shù)情況下,需要設(shè)置可滾動(dòng)的視口(窗口)的大小。這可通過調(diào)用setPreferredScrollableViewportSize()方法完成。顯示JTable中數(shù)據(jù)的基本步驟3四、預(yù)備知識(shí)(5)可以調(diào)用setSelectionMode()改變選擇模式。(6)默認(rèn)情況下,用戶能夠選擇一行。要允許選擇列或單元格,可以使用setColumnSelectionAllowed(),setRowSelectionAllowed()或setCellSelectionEnable()。(7)創(chuàng)建一個(gè)JScrollPane,指定JTable為要滾動(dòng)的組件。4用JTable類創(chuàng)建表格JTable的構(gòu)造方法(1)JTable(Object[][]data,Object[]headerNames):自動(dòng)創(chuàng)建一個(gè)表,容納data中指定的數(shù)據(jù),并具有headerNames指定的標(biāo)題名data數(shù)組是二維的,第一維指定表中的行數(shù),第二維指定每一行中的元素?cái)?shù)量。在所有的情況下,每一行的長(zhǎng)度必須等于headerNames的長(zhǎng)度。5(2)JTable(TableModeldm)自動(dòng)創(chuàng)建一個(gè)表,有默認(rèn)的字段模式以及選擇模式,并設(shè)置表格模式。參數(shù)dm表示指定的表格模式。6JTable不提供滾動(dòng)能力,但是表通常被包含在JScrollPane中。JScrollPane滾動(dòng)條對(duì)象=newJScrollPane(表格對(duì)象);設(shè)置滾動(dòng)視口的大?。菏褂胹etPreferredScrollableViewportSize()方法,格式為:voidsetPreferredScrollableViewportSize(Dimension
dim)其中,dim指定滾動(dòng)區(qū)域的大小7它繼承自AbstractTableModel抽象類而來。DefaultTableModel的常用構(gòu)造方法為:DefaultTableModel(Object[][]data,Object[]
headerNames)這個(gè)構(gòu)造方法自動(dòng)創(chuàng)建了一個(gè)DefaultTableModel實(shí)例,并初始化表。DefaultTableModel類8例701創(chuàng)建一個(gè)用于顯示表格數(shù)據(jù)的框架,目前尚無表格例702在上一例框架中添加表格,并設(shè)置滾動(dòng)條。9調(diào)整表格列寬使用JTable的setAutoResizeMode()方法:voidsetAutoResizeMode(intmode)其中參數(shù)mode必須是以下5個(gè)之一:AUTO_RESIZE_SUBSEQUENT_COLUMENS:表示當(dāng)調(diào)整某一列寬時(shí),此字段之后的所有字段列寬都會(huì)跟著一起變動(dòng)。此為系統(tǒng)默認(rèn)值。AUTO_RESIZE_ALL_COLUMNS:表示當(dāng)調(diào)整某一列寬時(shí),此表格上所有字段的列寬都會(huì)跟著一起變動(dòng)。AUTO_RESIZE_OFF:表示當(dāng)調(diào)整某一列寬時(shí),此表格上所有字段列寬都不會(huì)跟著改變。AUTO_RESIZE_NEXT_COLUMN:表示當(dāng)調(diào)整某一列寬時(shí),此字段的下一個(gè)字段的列寬會(huì)跟著改變,其余均不會(huì)變。AUTO_RESIZE_LAST_COLUMN:表示當(dāng)調(diào)整某一列寬時(shí),最后一個(gè)字段的列寬會(huì)跟著改變,其余均不會(huì)改變。10設(shè)置表格每列的寬度的方法:利用JTable中的getColumnModel()方法取得TableColumnModel對(duì)象利用TableColumnModel接口所定義的getColumn()方法取得TableColumn對(duì)象(即表列)利用此對(duì)象的setPreferredWidth()方法可以控制字段的寬度。例703在上一例表格中設(shè)置每一列的寬度11為列添加組合框在類中定義一個(gè)組合框?qū)ο驤ComboBoxc1=newJComboBox();在構(gòu)造方法中添加項(xiàng)目c1.addItem("信息");為列添加組合框setCellEditor()方法:用于為列添加組件,()中參數(shù)指定組件對(duì)象名如:為索引為2的列添加組合框table.getColumnModel().getColumn(2).setCellEditor(newDefaultCellEditor(c1));例70412為表格添加數(shù)據(jù)修改按鈕為SimpleTable類添加兩個(gè)文本框成員,一個(gè)用于填寫要?jiǎng)h除列的序號(hào),另一個(gè)用于填寫要增加列的標(biāo)題。源碼如下所示:JTextFieldt1,t2;在構(gòu)造方法中,將上面定義的文本框連同兩個(gè)標(biāo)簽添加到框架的南部,并設(shè)置背景色。13定義4個(gè)JButton按鈕,并把它們添加到框架的北部定義ActionListener接口中處理按鈕事件的方法actionPerformed()14DefaultTableModel類的常用方法getColumnCount()方法:返回DefaultTableModel類中的列數(shù)(表格列數(shù))intgetColumnCount()getRowCount()方法:返回DefaultTableModel類中的行數(shù)(表格行數(shù))intgetRowCount()15addColumn()方法:將一列添加到表格模型中voidaddColumn(ObjectcolumnName)參數(shù)columnName表示要添加的列的標(biāo)識(shí)符,它可以為nulladdRow()方法:添加一行到表格模型的結(jié)尾;voidaddRow(VectorrowData)參數(shù)rowData表示要添加的行數(shù)據(jù)(可選),如果未指定rowData,則新行將包含null值。16removeColumn()方法:移除表格模型中指定位置上的列voidremoveRow(Objectcolumn)參數(shù)column表示要移除的列的索引removeRow()方法:移除表格模型中指定位置上的行voidremoveRow(introw)參數(shù)row表示要移除的行的索引17JTable類的常用方法getColumnCount()方法:獲得列模型中的列數(shù)。注意,這可能與表模型中的列數(shù)不同。intgetColumnCount()getColumnName()方法:獲得出現(xiàn)在視圖中指定列位置處的列名稱StringgetColumnName(intcolumn)參數(shù)column為在視圖中指定的要查詢的列。18getRowCoun
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 銀行網(wǎng)點(diǎn)裝修材料供應(yīng)合同
- 曲棍球館裝修合同協(xié)議
- 陵園墓地裝修合同范本
- 橡膠制品危險(xiǎn)品運(yùn)輸合同
- 跨境電商物流協(xié)議范本
- 裝修施工安全糾紛起訴書
- 辦公樓外立面改造合同
- 隔離、手衛(wèi)生規(guī)范、碳青霉烯類耐藥腸桿菌預(yù)防與控制標(biāo)準(zhǔn)專項(xiàng)測(cè)試卷
- 汽車整車物流承運(yùn)協(xié)議
- 電力設(shè)備運(yùn)輸承攬合同樣本
- 三年級(jí)下學(xué)期信息技術(shù)第09課制作宣傳海報(bào)課件
- Unit4MyfavoriteSubjectSectionA1a-1d課件人教版英語(yǔ)七年級(jí)上冊(cè)
- 2024年國(guó)家公務(wù)員考試行測(cè)真題及答案(完整版)
- 污水處理及中水回用工程可行性研究報(bào)告書
- 第二單元測(cè)試卷-2024-2025學(xué)年語(yǔ)文三年級(jí)上冊(cè)統(tǒng)編版
- 2023年中國(guó)醫(yī)藥集團(tuán)有限公司總部招聘考試真題及答案
- 質(zhì)量為綱-華為公司質(zhì)量理念與實(shí)踐
- 2024年第五屆全國(guó)大學(xué)生職業(yè)發(fā)展大賽初賽線上答題考試題庫(kù)(含答案)
- 大一統(tǒng)王朝的鞏固(課件) 2024-2025學(xué)年七年級(jí)歷史上冊(cè)同步教學(xué)課件(統(tǒng)編版2024)
- 政法系統(tǒng)領(lǐng)導(dǎo)干部專題讀書班學(xué)習(xí)心得體會(huì)范文(三篇)
- 2024年重慶市高考物理試卷(含答案解析)
評(píng)論
0/150
提交評(píng)論