您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第四章 Java语言程序设计[肖敏]
Java项目开发教程第4章实现客户端界面Java项目开发教程本章学习要点:了解Java图形界面编程方法;JavaSwing包的使用;掌握实现聊天室客户端编程所必须的基本知识与技能;Java项目开发教程4.1需求分析作为在线网络聊天室,要完成如下的功能:1.实现一个用户聊天的软件运行界面。2.通过这个界面在线用户应该能够输入聊天信息。3.在线用户也应该能够看到所有其他用户发出的聊天信息。Java项目开发教程4.2确定任务单:任务:通过对需求的理解,经过分析,可以初步得出客户端界面大致如下图所示:图4.1聊天室客户端界面Java项目开发教程4.3任务:完成客户端窗口界面一、确定步骤:1确定聊天室客户端界面所用到的控件2确定聊天室客户端界面的布局方式3确定每个控件的大小4确定窗口的大小和位置5创建窗口6将控件加入到窗口中Java项目开发教程二、分析步骤:1、确定登录窗口界面所用到的控件预备知识Swing是AWT的扩展,它提供了许多新的图形界面组件。Swing组件以J开头,除了有与AWT类似的按钮(JButton)、标签(JLabel)、复选框(JCheckBox)、菜单(JMenu)等基本组件外,还增加了一些丰富的高层组件,如表格(JTable)、树(JTree)。Java项目开发教程Java中常用的Swing组件如下表所示:组件功能JFrame窗口窗口,用于构造一个窗口并容纳以下各组件JLabel标签,用于在窗口中显示静态文本JTextField是一个轻量级组件,它允许编辑单行文本JTextArea是一个显示纯文本的多行区域JButton按钮组件JPanel是一个轻量级容器,上面可以放置其它组件JCheckBox复选框,复选框是一个可以被选定和取消选定的项,它将其状态显示给用户。JPasswordField允许编辑单行文本,其视图指示键入内容,但不显示原始字符,一般用来输入密码JRadioButton实现一个单选按钮,此按钮项可被选择或取消选择,并可为用户显示其状态JComboBox将按钮或可编辑字段与下拉列表组合的组件JList显示对象列表并且允许用户选择一个或多个项的组件Java项目开发教程swing各组件功能及操作方法简介:1)JFrame类创建窗口JFrame可为应用程序构建主框架,JFrame类继承了Frame类。Component:抽象类,归纳了所有图形用户界面上的组件。Containter:容器也是组件,特别的是容器中可以容放组件。构造方法JFrame提供了两个方法:getContentPane和setContentPane就是用于获取和设置其ContentPane的。JFrame的设置和显示方法在JFrame窗口中加入组件Java项目开发教程frame.getContentPane().add(childComponent)a)用getContentPane()方法获得JFrame的内容面板,再对其加入组件:b)建立一个JPanel或JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板JPanelcontentPane=newJPanel();……//把其它组件添加到Jpanel中;frame.setContentPane(contentPane);//把contentPane对象设置成为frame的内容面板或者:frame.getContentPane.add(contentPane);Java项目开发教程2)JPanel概述面板(JPanel)是一个轻量容器组件,用法与Panel相同,用于容纳界面元素,以便在布局管理器的设置下可容纳更多的组件,实现容器的嵌套。JPanel,JScrollPane,JSplitPane,JInteralFrame都属于常用的中间容器,是轻量组件。JPanel的缺省布局管理器是FlowLayout。Java项目开发教程2)JPanel概述构造方法:publicJPanel():创建一个FlowLayout布局的面板publicJPanel(LayoutMangerlayout):创建一个指定布局的面板如:JPanelp1=newJPanel(newBorderLayout());说明:面板的默认布局是FlowLayout,不同于Container的默认。Java项目开发教程3)标签(JLabel)构造方法JLabel()创建一个空标签JLabel(Stringc)指定标签文本JLabel(Stringc,Icon,Imageiconicon,JLabel.left/JLabel.right)同时显示图标与文本常用设置方法设置标签显示文本:publicvoidsetText(Stringc)取得标签显示文本:publicStringgetText()字体设置:publicvoidsetFont(Fontf)前景色设置:publicvoidsetForeground(Colorc)Java项目开发教程按钮是窗口程序中最常用的一种组件,按钮提供用户快速启动某一动作的方法,用户只需做的就是单击它们。按钮由Button类创建,而Button类是由Component类直接扩展的。按钮是一个常用组件,按钮可以带标签或图象,用户可通过按钮发布命令。4)按钮(JButton)Java项目开发教程构造方法:JButton()JButton(Iconicon)//按钮上显示图标JButton(Stringtext)//按钮上显示字符JButton(Stringtext,Iconicon)//按钮上既显示图标又显示字符5)单行文本框(JTextField)文本框是AWT的基本组件,文本框是用来在窗口中显示文字的矩形框,这些文字可以被用户编辑。文本框可以用来输入文字、编辑文字、并显示所输入的文字、读取用户输入的文字。文本框分为单行文本框和多行文本框。Java项目开发教程构造方法:JTextField();//创建一个无任何内容的文本框对象JTextField(intcolumns);//指定宽度JTextField(Stringtext);//指定初始化文本JTextField(Stringtext,intcolumns);//即指定宽度又指定文字信息常用方法:设置标签显示文本:publicvoidsetText(Stringc)取得标签显示文本:publicStringgetText()字体设置:publicvoidsetFont(Fontf)前景色设置:publicvoidsetForeground(Colorc)Java项目开发教程6)密码文本框(JPasswordField)密码输入框则只有一种(JPasswordField)。JPasswordField是JTextField的子类,它们的主要区别是JPasswordField不会显示出用户输入的东西,而只会显示出程序员设定的一个固定字符,比如'*'或者'#'。Java项目开发教程构造方法JPasswordField();JPasswordField(Documentdoc,Stringtxt,intcolumns)JPasswordField(intcolumns)JPasswordField(Stringtext)JPasswordField(Stringtext,intcolumns)其它方法char[]getPassword()chargetEchoChar()voidsetEchoChar(charc)设置为了隐藏密码而显示的字符,默认为‘*’字符也用getText方法和setText获得或者设置文本内容(当然在用户界面上是隐藏的)。Java项目开发教程显示多行文本。构造方法:JTextArea()JTextArea(introws,columns)指定尺寸JTextArea(Stringtext)指定初始化文本JTextArea(Stringtext,introws,intcolumns)7)多行文本框(JTextArea)常用设置方法:publicvoidsetLineWrap(booleanwrap):换行状态设置publicvoidsetRows(introws):设置行数publicvoidsetColumns(intcolumns):设置列数说明:颜色、字体、内容的设置同上(setForeground、setFont、setText)Java项目开发教程JComboBox每次只能选择其中的一项,但是可编辑每项的内容,而且每项的内容可以是任意类,而不再局限于String。(8)组合框(JComboBox)作用以下拉列表的方式给出若干选项,提供用户从中选择。下拉列表在单击箭头时才能浏览其中的项目。构造方法JComboBox():创建一个默认数据项的组合框。JComboBox(Object[]items):创建一个包含指定数组各元素的组合框。常用方法ObjectgetSelectedItem():返回当前选择项intgetSelectedIndex():返回当前选择项的序数(从0开始)intgetItemCount():返回组合框中的项数。Java项目开发教程适用于数量较多的选项以列表形式显示,里面的项目可以由任意类型对象构成。支持单选和多选。9)列表(JList)作用以多行列表的方式给出若干选项,提供用户从中选择。构造方法:JList():创建一个内容为空的列表框。JList(Object[]items):创建一个包含指定数组各元素的列表框。常用方法确定列表框尺寸:voidsetVisibleRowCount(intnum):设置列表可见行数。voidsetFixedCellWidth(intwidth):设置列表框的固定宽度(像素)。voidsetFixedCellHeight(intheight):设置列表框的固定高度。其它方法BooleanisSelectedIndex(intindex):序数为index的项是否被选中。Java项目开发教程复选框提供简单的on/off开关,旁边显示文本标签。10)复选框(JCheckBox)作用给出若干选项,提供用户选择。复选框有两种状态:选中和未选中。在一组复选框中,同时可以选择多项。构造方法JCheckBox()无选项文本、无选中JCheckBox(Stringtext)指定选项文本、无选中JCheckBox(Stringtext,booleanselect)常用方法isSelected():可测得复选框是否被选中。Java项目开发教程单选框JRadioButton与AWT中的复选框组功能类似。11)单选框(JRadioButton)作用给出若干选项,提供用户选择其中一项。单选按钮同复选框一样也有两种状态:选中和未选中。多个单选按钮通常组织在一个按钮组中工作,此时只能选择其中一项。构造方法JRadioButton()无文本、无选中JRadioButton(Stringtext)指定选项文本、无选中JRadioButton(Stringtext,booleanselected)指定选项文本,已选中常用方法isSelected():可测得单选按钮是否被选中Java项目开发教程===================TestTextField.java===================importjava.awt.*;importjavax.swing.*;publicclassTestTextFieldextendsJFrame{publicstaticvoidmain(String[]args){JFramef=newJFrame(Java程序设计基础);Containerc=f.getContentPane();JPanelp=newJPanel();c.add(p);ImageIconicon=newImageIcon(im
本文标题:第四章 Java语言程序设计[肖敏]
链接地址:https://www.777doc.com/doc-3861760 .html