书签 分享 收藏 举报 版权申诉 / 41
上传文档赚钱

类型《Java语言》课件第13章.ppt

  • 上传人(卖家):momomo
  • 文档编号:5818482
  • 上传时间:2023-05-11
  • 格式:PPT
  • 页数:41
  • 大小:250KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《Java语言》课件第13章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Java语言 Java 语言 课件 13
    资源描述:

    1、13.1 Swing包简介包简介 JDK1.2以后在支持以后在支持javax.swing包包 Swing包在图形界面设计上比包在图形界面设计上比AWT更丰富,更更丰富,更美观。美观。Swing拥有拥有4倍于倍于AWT的用户界面组件。的用户界面组件。是是AWT包基础上的扩展,在很多情况下在包基础上的扩展,在很多情况下在AWT包的部件前加上字母包的部件前加上字母J即为即为Swing部件的名部件的名称,如:称,如:JFrame、JApplet、JButton等。等。13.1 Swing包简介(续)Swing部件都是部件都是AWT的的Container类的直接子类的直接子类或间接子类类或间接子类 Sw

    2、ing与与AWT的事件处理机制相同。处理的事件处理机制相同。处理Swing中的事件一般仍用中的事件一般仍用java.awt.event包,包,但有的要用到但有的要用到javax.swing.event包。包。Swing比比AWT部件具有更强的实用性。部件具有更强的实用性。设置边框。设置边框。使用图标(使用图标(Icon)提示信息提示信息 Swing部件从功能上可分为以下几种部件从功能上可分为以下几种 顶层容器:顶层容器:JFrame、JApplet、JDialog和和JWindow共共4个。个。中间容器:中间容器:JPanel、JScrollPane、JSplitPane、JToolBar和和

    3、JTabbedPane。特殊容器:在特殊容器:在GUI上起特殊作用的中间层,如上起特殊作用的中间层,如JInternalFrame、JLayeredPane和和JRootPane。基本控件:实现人机交互的部件,如基本控件:实现人机交互的部件,如JButton、JComboBox、JList、JMenu、JSlider和和JTextField。不可编辑信息的显示:向用户显示不可编辑信息的部件,如不可编辑信息的显示:向用户显示不可编辑信息的部件,如JLabel、JProgressBar和和JToolTip。可编辑信息的显示:向用户显示能被编辑的格式化信息的部件,如可编辑信息的显示:向用户显示能被编

    4、辑的格式化信息的部件,如JColorChooser、JFileChooser、JTable和和JTextArea。13.2.1 JFrame 在在JFrame中不能直接调用中不能直接调用add方法加入部件,而方法加入部件,而是要通过是要通过getContentPane获得一个容器获得一个容器(Container)对象,再调用这个容器对象的)对象,再调用这个容器对象的add 方法加入其它部件。这点是所有方法加入其它部件。这点是所有Swing的容器部的容器部件均有的特性件均有的特性 在在JFrame中可以设置用户关闭窗体时在执行中可以设置用户关闭窗体时在执行windowClosing()方法后的默

    5、认处理操作。如果没方法后的默认处理操作。如果没有注册窗体关闭处理,也将执行默认处理操作。有注册窗体关闭处理,也将执行默认处理操作。13.2 Swing典型部件使用典型部件使用默认处理操作的设置方法默认处理操作的设置方法void setDefaultCloseOperation(int operation)其中参数其中参数operation为一个整数,可以是以下常量:为一个整数,可以是以下常量:DO_NOTHING_ON_CLOSE:不做任何处理;不做任何处理;HIDE_ON_CLOSE:为默认处理情形,自动隐藏窗为默认处理情形,自动隐藏窗体。体。DISPOSE_ON_CLOSE:自动隐藏和关闭

    6、窗体。自动隐藏和关闭窗体。EXIT_ON_CLOSE:仅用于应用程序中,关闭窗体、仅用于应用程序中,关闭窗体、结束程序运行。结束程序运行。例例13-1一个简单的演示一个简单的演示 import java.awt.*;import javax.swing.*;import java.awt.event.*;public class ContentDemo public static void main(String args)JFrame f=new JFrame(Demo);Container cont=f.getContentPane();cont.setLayout(new FlowLay

    7、out();for(int i=1;i 1)/左上角的点左上角的点 g.fillOval(x+3,y+3,9,9);if(val 3)/右上角的点右上角的点 g.fillOval(x+23,y+3,9,9);例例13-2:续续2 if(val=6)/中间左边的点中间左边的点 g.fillOval(x+3,y+13,9,9);if(val%2=1)/正中央正中央 g.fillOval(x+13,y+13,9,9);if(val=6)/中间右边的点中间右边的点 g.fillOval(x+23,y+13,9,9);if(val 3)/底部左边的点底部左边的点 g.fillOval(x+3,y+23,

    8、9,9);if(val 1)/底部右边的点底部右边的点 g.fillOval(x+23,y+23,9,9);例例13-2:续续3 class MyPanel extends JPanel public void paintComponent(Graphics g)super.paintComponent(g);/调用父类方法绘调用父类方法绘制背景制背景 draw(g,value1,10,10);/在在10,10位置绘制筛子位置绘制筛子 draw(g,value2,120,10);/在在120,10位置绘制筛位置绘制筛子子 例例13-2:续续413.2.3 Swing中的按钮和标签中的按钮和标签

    9、 标签和各种按钮均允许设置图标标签和各种按钮均允许设置图标 构造方法的一种:构造方法的一种:JLabel(String str,Icon icon,int align)也可以在创建了标签对象后通过也可以在创建了标签对象后通过setIcon方法设置标方法设置标签的图标。签的图标。void setIcon(Icon icon)在所有图形部件的父类在所有图形部件的父类JComponent类中定义了如下类中定义了如下方法:方法:void setToolTipText(String text)功能:设置鼠标移到部件上时的提示文字。功能:设置鼠标移到部件上时的提示文字。例例13-3 用户登录界面设计用户登

    10、录界面设计 import java.awt.*;import javax.swing.*;public class ContentDemo extends JFrame JTextField username;JPasswordField password;JButton login,register;public ContentDemo()super(login frame);Container cont=getContentPane();cont.setLayout(new GridLayout(3,2);cont.add(new JLabel(username:);username=ne

    11、w JTextField(10);cont.add(username);cont.add(new JLabel(password:);password=new JPasswordField(10);cont.add(password);login=new JButton(new ImageIcon(enter.gif);register=new JButton(new ImageIcon(register.gif);cont.add(login);cont.add(register);setSize(200,200);setVisible(true);public static void ma

    12、in(String args)new ContentDemo();13.2.4 JScroolPane容器容器 例例13-4 在文本域中显示拆分结果。在文本域中显示拆分结果。import java.awt.*;import javax.swing.*;public class factorial extends JApplet public void init()String output=;JTextArea outputarea=new JTextArea(10,50);JScrollPane scroll=new JScrollPane(outputarea);Container con

    13、tainer=getContentPane();container.add(scroll);for(long i=0;i=10;i+)output+=+i+!=+fac(i)+n;outputarea.append(output);public long fac(long no)求求n的阶乘的阶乘.13.2.5 工具栏工具栏-JTollbar import java.awt.*;import javax.swing.*;public class ToolBarDemo extends JApplet public void init()Container cont=getContentPane

    14、();cont.setLayout(new BorderLayout();JToolBar tool=new JToolBar();Image myImage=getImage(getDocumentBase(),open.gif);JButton open=new JButton(new ImageIcon(myImage);myImage=getImage(getDocumentBase(),folder.gif);JButton mail=new JButton(new ImageIcon(myImage);tool.add(open);tool.add(mail);cont.add(N

    15、orth,tool);JScrollPane scroll=new JScrollPane(new JTextArea();cont.add(Center,scroll);13.2.6 JOptionPane对话框对话框 JoptionPane的对话框可分为四类:的对话框可分为四类:ShowMessageDialog:向用户显示一些消息;向用户显示一些消息;showInputDialog:提示用户进行输入;提示用户进行输入;showConfirmDialog:向用户确认,含向用户确认,含yes/no/cancel响应;响应;showOptionDialog:选项对话框,该对话框是选项对话框,该

    16、对话框是前面几种形态的综合。前面几种形态的综合。对话框的外观对话框的外观 显示消息对话框显示消息对话框showMessageDialog 格式:格式:static void showMessageDialog(Component parentComponent,Object message,String title,int messageType,Icon icon)其中,其中,参数参数1定义对话框的父窗体,如果该参数为定义对话框的父窗体,如果该参数为null,一个运行一个运行Java程序的默认窗体作为父窗体,并且程序的默认窗体作为父窗体,并且在父窗体中居中显示对话框;在父窗体中居中显示对话框

    17、;参数参数2为消息内容,可以是任何存放数据的部件或为消息内容,可以是任何存放数据的部件或数据对象本身;数据对象本身;参数参数3为对话框的标题;为对话框的标题;参数参数4为消息类型,内定的消息类型包括:为消息类型,内定的消息类型包括:ERROR_MESSAGE(错误消息)(错误消息)INFORMATION_MESSAGE(信息)(信息)WARNING_MESSAGE(警告消息)(警告消息)QUESTION_MESSAGE(询问消息)(询问消息)PLAIN_MESSAGE(一般消息);(一般消息);参数参数5为显示图标,缺少该参数时,根据消息类型为显示图标,缺少该参数时,根据消息类型有默认的显示图

    18、标。有默认的显示图标。提示输入对话框提示输入对话框showInputDialog 格式格式1:static String showInputDialog(Object message)最复杂的形态涉及最复杂的形态涉及7个参数,分别表示父窗体、消个参数,分别表示父窗体、消息、标题、消息类型、图标、可选值、初始值。息、标题、消息类型、图标、可选值、初始值。static Object showInputDialog(Component parentComponent,Object message,String title,int messageType,Icon icon,Object select

    19、ionValues,Object initialSelectionValue)确认对话框确认对话框showConfirmDialog 最简单只包含两个参数。最简单只包含两个参数。格式:格式:static int showConfirmDialog(Component parentComponent,Object message)该对话框显示时包含该对话框显示时包含3个选项个选项Yes,No and Cancel,标题默认为标题默认为Select an Option。最复杂的形式有最复杂的形式有6个参数,具体格式如下:个参数,具体格式如下:static int showConfirmDialog

    20、(Component parentComponent,Object message,String title,int optionType,int messageType,Icon icon)选项对话框选项对话框showOptionDialog 格式:格式:static int showOptionDialog(Component parentComponent,Object message,String title,int optionType,int messageType,Icon icon,Object options,Object initialValue)使用举例:使用举例:Obj

    21、ect options=OK,CANCEL;JOptionPane.showOptionDialog(null,Click OK to continue,Warning,JOptionPane.DEFAULT_OPTION,JOptionPane.WARNING_MESSAGE,null,options,options0);显示一个警告对话框,包括显示一个警告对话框,包括 OK,CANCEL两个选项两个选项,标题标题为为“Warning”,显示消息为显示消息为“Click OK to continue”。【例例13-6】计算输出杨辉三角形。计算输出杨辉三角形。import javax.swin

    22、g.*;public class PascalTriangle public static void main(String args)String no,output=;int n;no=JOptionPane.showInputDialog(输入一个数字:输入一个数字:);n=Integer.parseInt(no);int c=new intnn;for(int i=0;i n;i+)ci0=1;cii=1;for(int j=0;j 0&ji)cij=ci-1j-1+ci-1j;output+=cij+;output+=n;JTextArea outArea=new JTextArea

    23、(5,20);JScrollPane scroll=new JScrollPane(outArea);outArea.setText(output);JOptionPane.showMessageDialog(null,scroll,杨辉三角形杨辉三角形,JOptionPane.INFORMATION_ MESSAGE);System.exit(0);等级考试上机题等级考试上机题 import javax.swing.JOptionPane;public class Java_1 public static void main(String args)/变量初始化变量初始化 int passe

    24、s=0,/考生通过的数目考生通过的数目 failures=0,/考生不通过的数目考生不通过的数目 student=1,/学生计数器学生计数器 result;/一门考生结果一门考生结果 String input,/用户输入的值用户输入的值 output;/输出字符串输出字符串/处理处理10名学生名学生,用计数器控制循环用计数器控制循环 while(student 8)output=output+n提高学费提高学费;/*Found*JOptionPane._(null,output,对考试结果的分析示例对考试结果的分析示例,JOptionPane.INFORMATION_MESSAGE);/*Fo

    25、und*System._(0);等级考试试题等级考试试题2 import javax.swing.*;public class Java_2 public static void main(String args)int frequency1=0,frequency2=0,frequency3=0,frequency4=0,frequency5=0,frequency6=0,face;/骰子旋转骰子旋转500次的代码次的代码 for(int roll=1;roll=500;roll+)face=1+(int)(Math.random()*6);/*Found*switch(_)case 1:+

    26、frequency1;break;case 2:+frequency2;break;case 3:+frequency3;break;case 4:+frequency4;break;case 5:+frequency5;break;case 6:+frequency6;break;/*Found*JTextArea outputArea=_ JTextArea(7,10);outputArea.setText(面面t频率频率+n1t+frequency1+n2t+frequency2+n3t+frequency3+n4t+frequency4+n5t+frequency5+n6t+frequ

    27、ency6);/*Found*JOptionPane.showMessageDialog(null,_,骰子旋转骰子旋转500次次,JOptionPane.INFORMATION_MESSAGE);/*Found*System._(0);2.颜色对话框颜色对话框 在在JColorChooser类中有一个静态方法可以弹出对类中有一个静态方法可以弹出对话框选择颜色。具体格式如下:话框选择颜色。具体格式如下:static Color showDialog(Component component,String title,Color initialColor)其中,参数其中,参数component指出

    28、对话框依赖的组件,指出对话框依赖的组件,title为对话框的标题,为对话框的标题,initialColor指定对话框显指定对话框显示时的初始颜色设置。示时的初始颜色设置。例例13-7 给围棋棋盘背景选择颜色给围棋棋盘背景选择颜色 change=new JButton(改变背景改变背景);cont.add(South,change);change.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)Color boardColor=JColorChooser.showDialog(Simp

    29、lechess.this,棋盘棋盘颜色颜色,chessboard.getBackground();chessboard.setBackground(boardColor););13.2.7选项卡选项卡-JTabbedPane 通过通过addTab方法可以给选项卡中添加选项,该方方法可以给选项卡中添加选项,该方法有多种形态,以下为常用形式:法有多种形态,以下为常用形式:void addTab(String title,Component component)在选项卡中增加一个用标题代表的部件,无图标。在选项卡中增加一个用标题代表的部件,无图标。void addTab(String title,I

    30、con icon,Component component)在选项卡中增加一个部件,该选项通过标题、图标在选项卡中增加一个部件,该选项通过标题、图标表示,其中,标题和图标可以存在,也可以某个表示,其中,标题和图标可以存在,也可以某个为为null。点击选项卡的会发生状态改变事件点击选项卡的会发生状态改变事件 首先必须首先必须注册注册ChangeListener监听者监听者。void addChangeListener(ChangeListener l)在监听者的类设计中必须实现在监听者的类设计中必须实现ChangeListener接接口,也就是要编写如下处理方法:口,也就是要编写如下处理方法:pu

    31、blic void stateChanged(ChangeEvent e)在事件处理编程中,可以利用在事件处理编程中,可以利用JTabbedPane提供提供了了getSelectedIndex()方法获取当前选中的选项卡方法获取当前选中的选项卡序号,从而进一步实现其他处理序号,从而进一步实现其他处理例例13-7 选项卡的应用选项卡的应用 import java.awt.*;import javax.swing.*;import javax.swing.event.*;public class TestTabbedPane extends JFrame implements ChangeList

    32、ener JTabbedPane jtp;JPanel jp=new JPanel4;/定义有定义有4个元素的面板数组个元素的面板数组 int currentIndex=0;Color color=Color.red,Color.green,Color.blue,Color.white;String des=红色卡红色卡,绿色卡绿色卡,兰色卡兰色卡,白色卡白色卡;public TestTabbedPane()Container cont=getContentPane();jtp=new JTabbedPane();for(int i=0;i4;i+)jpi=new JPanel();/创建面板

    33、对象创建面板对象 jpi.setBackground(colori);/设置面板的背景设置面板的背景 jtp.addTab(desi,jpi);/将面板加入选项卡将面板加入选项卡 jtp.addChangeListener(this);cont.add(jtp);/将选项卡加入窗体中将选项卡加入窗体中 setSize(300,150);setVisible(true);public void stateChanged(ChangeEvent e)if(e.getSource()=jtp)int i=(JTabbedPane)e.getSource().getSelectedIndex();this.setTitle(选择了选择了+desi);/设置窗体的标题设置窗体的标题 public static void main(String args)new TestTabbedPane();

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《Java语言》课件第13章.ppt
    链接地址:https://www.163wenku.com/p-5818482.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库