資源描述:
《java創(chuàng)建圖形用戶界面》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、Chapter12創(chuàng)建圖形用戶界面SwingGUI組件的公共特性按鈕復(fù)選框單選按鈕標(biāo)簽文本域/文本區(qū)組合框列表框滾動(dòng)條/滑動(dòng)塊創(chuàng)建多個(gè)窗口1java高級(jí)程序設(shè)計(jì)(下)GUI組件常用GUI組件(黃色顯示):2java高級(jí)程序設(shè)計(jì)(下)SwingGUI組件的公共特性3java高級(jí)程序設(shè)計(jì)(下)SwingGUI組件的公共特性Swing組件中邊框的類型,主要有:1.newTitleBorder(Swingtitle)//設(shè)置標(biāo)題邊框2.newLineBorder(Colorcolor,intwidth)//設(shè)置線性邊框例:TestSwingCommonFeatures.java按鈕:一種
2、點(diǎn)擊時(shí)觸發(fā)行為事件的組件。Swing提供:常規(guī)按鈕、開關(guān)按鈕、復(fù)選框和單選按鈕---公共特性在:java.swing.AbstractionButtonjavax.swing.JComponentjavax.swing.AbstractionButtonjavax.swing.JButton4java高級(jí)程序設(shè)計(jì)(下)圖標(biāo)(Icon--ImageIcon)可以用于裝飾組件。Javax.swing.Icon接口---Javax.swing.ImageIconJava目前支持三種圖像格式:GIF,JPEG,PNG例:在一個(gè)按鈕上顯示三種圖標(biāo)(默認(rèn)圖標(biāo)、按下圖標(biāo)、在上圖標(biāo))JButto
3、n的常用屬性:texticonmnemonichorizontalAlignmentverticalAlignmenthorizontalTextPositionverticalTextPositioniconTextGap5java高級(jí)程序設(shè)計(jì)(下)對(duì)齊方式、文本位置對(duì)齊方式水平對(duì)齊:setHorizontalAlignment(int)垂直對(duì)齊:setVerticalAlignment(int)int值選取位于SwingConstants接口下的常量值,可以選取5個(gè):LEADING,LEFT,CENTER,RIGHT,TRAILING文本位置指文本相對(duì)于圖標(biāo)的水平和垂直位置。
4、水平文本位置:setHorizontalTextPosition(int)垂直文本位置:setVerticalTextPosition(int)int值選取位于SwingConstants接口下的常量值,可以選取3個(gè):TOP,CENTER,BOTTOM6java高級(jí)程序設(shè)計(jì)(下)使用按鈕(JButton)例:編寫程序,在面板上顯示一條信息,并使用兩個(gè)圖標(biāo)<=和=>在面板上向左或向右移動(dòng)信息。代碼:mypanel.javapublicvoidactionPerformed(ActionEvente){if(e.getActionCommand().equals("<="))x-=1
5、0;if(e.getActionCommand().equals("=>"))x+=10;repaint();}7java高級(jí)程序設(shè)計(jì)(下)復(fù)選框(JCheckBox)使用復(fù)選框:實(shí)例:Checkmypanel.java8java高級(jí)程序設(shè)計(jì)(下)單選按鈕(JRadioButton)即選擇按鈕,從多個(gè)選項(xiàng)中選擇唯一的一個(gè)選項(xiàng)。組織多個(gè)單選按鈕:java.swing.ButtonGroupButtonGroupbtg=newButtonGroup();btg.add(jrb1);btg.add(jrb2);注意:1.每次只能從單選按鈕組中選擇一個(gè)單選按鈕。2.ButtonGroup
6、不是一個(gè)組件,所以不能添加到容器中。點(diǎn)擊一個(gè)單選按鈕觸發(fā)ItemEvent事件,然后觸發(fā)ActionEvent事件。實(shí)例:添加三個(gè)名為Red,Green,Blue的單選按鈕,用來(lái)進(jìn)行對(duì)信息顏色的選擇。9java高級(jí)程序設(shè)計(jì)(下)標(biāo)簽(JLable)用于給其他組件加標(biāo)簽(文本域),是JComponent的子類。如:ImageIconim=newImageIcon("G:/picture/Skypeberry.gif");JLabeljb=newJLabel("Skypeberry",im,SwingConstants.CENTER);jb.setHorizontalTextPosi
7、tion(SwingConstants.CENTER);jb.setVerticalTextPosition(SwingConstants.BOTTOM);jb.setIconTextGap(5);getContentPane().add(jb);10java高級(jí)程序設(shè)計(jì)(下)文本域(JTextField、JTextArea)用于輸入或顯示字符串,均是JTextComponent的子類。JTextField主要用于顯示單行文字。JTextArea用于顯示多行文字。11java高級(jí)