查看“Java界面组件”的源代码
←
Java界面组件
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
==Swing 组件== 在前面的章节中,我们设计了程序的窗体界面:[[Java界面容器]] [[文件:Java10-1.png]] 下面我们添加Swing组件 Swing 组件由javax.swing包提供,是内容丰富、功能强大的轻量级组件,如图所示: [[文件:java9-5.png]] '''需要注意的是,不可以把组件直接添加到Swing窗体中,应当把组件添加到Swing窗体所包含的一个称为内容面板的容器中。''' ==常用Swing组件== 教学方法:用Word布局 ==JLable组件== 标签组件是用于显示文本信息、或图标、或二者兼而有之。JLabel组件不会对用户的输入发生反应,即,对JLabel组件不能编辑。标签组件可以将显示内容垂直或水平显示,通常默认文本信息的显示状态为水平。而图标的显示状态为垂直。标签组件一般起到提示作用。JLabel构造方法有三种: *JLabel(): 创建无图像并且其标题为空字符串的 JLabel。 *JLabel(Icon image):创建具有指定图像的 JLabel 实例。 *JLabel(String text, int horizontalAlignment):创建具有指定字符串和水平对齐方式的 JLabel 实例。 例如,下面代码创建文本标签和带图标的标签 <nowiki>Label labText=new JLabel(“用户名”); ImageIcon icon = new ImageIcon("image/greenflag20.gif"); JLabel labImage=new JLabel(icon);</nowiki> '''应用:'''在我们的类UserInfo中添加两个私有JLabel变量,表示用户名和密码的标签 <nowiki>private JLabel labelUser=new JLabel("用户登录",JLabel.CENTER); private JLabel labelPwd= new JLabel("登录密码",JLabel.CENTER);//“登录密码”标签</nowiki> ==JTextField组件== JTextField组件用于创建文本框。文本框是用来接受用的单行文本信息输入的区域。通常文本框用于接受用户信息或其他文本信息的输入。 ===构造方法=== *JTextField() : 构造一个新的 TextField。 *JTextField(int columns):构造一个具有指定列数的新的空 TextField。 *JTextField(String text) :构造一个用指定文本初始化的新 TextField。 *JTextField(String text, int columns): 构造一个用指定文本和列初始化的新 TextField。 例如: JTextField txtUserID=new JTextField(16);//创建列数为16的空文本框 ===常用方法=== 方法 说明 <nowiki>String getText() 获得文本域的中的文字 int getColumns() 返回此 TextField 中的列数。 void setColumns(int columns) 设置此 TextField 中的列数,需要重新布局,调用Jcomponent类中的revalidate()</nowiki> '''应用:'''在我们的类UserInfo中添加一个JTextField私有变量表示文本域。 <nowiki>private JTextField txtUserID = new JTextField(16);//“登录账号”文本框</nowiki> ==JPasswordField== PasswordField是JTextField的子类,是一种特殊的文本框,也是用来接受单行文本信息的输入的区域,但会用回显字符串代替输入的文本信息,典型的回显字符是星号(*)。 ===构造方法=== *JPasswordField():构造一个新 JPasswordField,使其具有默认文档、为 null 的开始文本字符串和为 0 的列宽度。 *JPasswordField(int columns) :构造一个具有指定列数的新的空 JPasswordField。 *JPasswordField(String text) “:构造一个用指定文本初始化的JPasswordField。 *JPasswordField(String text, int columns): 构造一个用指定文本和列初始化的JPasswordField。 例如: JPasswordField txtPassword=new JPasswordField(16); ===常用方法=== <nowiki>方法 说明 void setEchoChar(char echo) 为密码域设置回显字符字符。 char[] getPassword() 返回密码框中的文本</nowiki> 【注意】密码并不是以String的形式返回。 '''应用:'''在我们的类UserInfo中添加一个JPasswordField私有变量表示密码域。 <nowiki>private JPasswordField txtPassword=new JPasswordField(16);//密码框</nowiki> ==JTextArea== JTextArea组件是文本区组件。它与JTextField一样能接受文本信息的输入和显示。但是与JTextField组件不同的是,JTextArea对象可以多行输入与显示,突破了JTextField的单行的限制。 ===构造方法=== *JTextArea(int rows, int columns) :构造具有指定行数和列数的新的空 TextArea。 *JTextArea(String text) :构造显示指定文本的新的 TextArea。 *JTextArea(String text, int rows, int columns):构造具有指定文本、行数和列数的新的 TextArea。 在创建TextArea时,应用中经常将文本区对象放入一个滚动窗格中,以使用滚动条功能,例如: JTextArea ta = new JTextArea(10,10); JScrollPane sp = new JScrollPane(ta); ===常用方法=== <nowiki>方法 说明 void append(String str) 将给定文本追加到文档结尾 void insert(String str,int pos) 将指定文本插入指定位置 void replaceRange(String str,int start,int end) 用给定的新文本替换从指示的起始位置到结尾位置的文本。 String getText() 返回TextArea中的内容 int getRows() 返回 TextArea 中的行数。 int getColoumns() 返回 TextArea 中的列数。</nowiki> '''应用:'''我们将稍后用到这个组件 ==JButton组件== JButton是用来创建命令按钮。JButton对象具有这样的功能:当用户按下命令按钮,会激发一定的动作。JButton创建的按钮可以具有图标和文本信息的内容,通过它们可以有效地提示及帮助用户操作。 例如: <nowiki>JButton button1 = new JButton(“姓名”); ImageIcon ii = new ImageIcon(“java.gif”); JButton button2 = new JButton(ii); JButton button3 = new JButton(“姓名”,ii);</nowiki> '''应用:'''在我们的类UserInfo中添加两个个JButton私有变量表示按钮 <nowiki>private JButton btnLogon =new JButton("登陆");//登录按钮 private JButton btnSet = new JButton("注册");//重置按钮</nowiki> 返回 [[Java程序设计]]
返回至
Java界面组件
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息