JAVA图形界面(GUI)之常用组件

前面提到容器是用来组织组件的,那么这一篇博客就为大家介绍一些Java的常用组件。最后通过一个例子展示这些组件的实际效果。

按钮(JButton)

JButton是我们常用的一个组件,其表现形式为一个按钮。

构造方法

方法 说明
JButton() 创建不带有设置文本或图标的按钮
JButton(Action a) 创建一个按钮,其属性从所提供的 Action 中获取
JButton(Icon icon) 创建一个带图标的按钮
JButton(String text) 创建一个带文本的按钮
JButton(String text, Icon icon) 创建一个带初始文本和图标的按钮

按钮(JToggleButton)

JToggleButton与JButton的区别在于JToggleButton有两个状态:按下和弹起。

构造方法

方法 说明
JToggleButton() 创建最初未选定的切换按钮,不设置文本或图像
JToggleButton(Action a) 创建一个切换按钮,其属性从所提供的 Action 获取
JToggleButton(Icon icon) 创建一个最初未选定的切换按钮,该按钮具有指定的图像但是没有文本
JToggleButton(Icon icon, boolean selected) 创建具有指定图像和选择状态但没有文本的切换按钮
JToggleButton(String text) 创建具有指定文本的未选定的切换按钮
JToggleButton(String text, boolean selected) 创建具有指定文本和选择状态的切换按钮
JToggleButton(String text, Icon icon) 创建一个最初未选定的切换按钮,该按钮具有指定的文本和图像。
JToggleButton(String text, Icon icon, boolean selected) 创建具有指定文本、图像和选择状态的切换按钮

标签(JLabel)

用于短文本字符串或图像或二者的显示区。

构造方法

方法 说明
JLabel() 创建无图像并且其标题为空字符串的 JLabel
JLabel(Icon image) 创建具有指定图像的 JLabel 实例
JLabel(Icon image, int horizontalAlignment) 创建具有指定图像和水平对齐方式的 JLabel 实例
JLabel(String text) 创建具有指定文本的 JLabel 实例
JLabel(String text, Icon icon, int horizontalAlignment) 创建具有指定文本、图像和水平对齐方式的 JLabel 实例
JLabel(String text, int horizontalAlignment) 创建具有指定文本和水平对齐方式的 JLabel 实例

复选框(JCheckBox)

复选框的实现,复选框是一个可以被选定和取消选定的项,它将其状态显示给用户。

构造方法

方法 说明
JCheckBox() 创建一个没有文本、没有图标并且最初未被选定的复选框
JCheckBox(Action a) 创建一个复选框,其属性从所提供的 Action 获取
JCheckBox(Icon icon) 创建有一个图标、最初未被选定的复选框
JCheckBox(Icon icon, boolean selected) 创建一个带图标的复选框,并指定其最初是否处于选定状态
JCheckBox(String text) 创建一个带文本的、最初未被选定的复选框
JCheckBox(String text, boolean selected) 创建一个带文本的复选框,并指定其最初是否处于选定状态
JCheckBox(String text, Icon icon) 创建带有指定文本和图标的、最初未选定的复选框
JCheckBox(String text, Icon icon, boolean selected) 创建一个带文本和图标的复选框,并指定其最初是否处于选定状态

单选按钮(JRadioButton)

实现一个单选按钮,此按钮项可被选择或取消选择,并可为用户显示其状态。与 ButtonGroup 对象配合使用可创建一组按钮,一次只能选择其中的一个按钮。

构造方法

方法 说明
JRadioButton() 创建一个初始化为未选择的单选按钮,其文本未设定
JRadioButton(Action a) 创建一个单选按钮,其属性来自提供的 Action
JRadioButton(Icon icon) 创建一个初始化为未选择的单选按钮,其具有指定的图像但无文本
JRadioButton(Icon icon, boolean selected) 创建一个具有指定图像和选择状态的单选按钮,但无文本
JRadioButton(String text) 创建一个具有指定文本的状态为未选择的单选按钮
JRadioButton(String text, boolean selected) 创建一个具有指定文本和选择状态的单选按钮
JRadioButton(String text, Icon icon) 创建一个具有指定的文本和图像并初始化为未选择的单选按钮
JRadioButton(String text, Icon icon, boolean selected) 创建一个具有指定的文本、图像和选择状态的单选按钮

文本框(JTextField)

JTextField 是一个轻量级组件,它允许编辑单行文本。

构造方法

方法 说明
JTextField() 构造一个新的 TextField
JTextField(Document doc, String text, int columns) 构造一个新的 JTextField,它使用给定文本存储模型和给定的列数
JTextField(int columns) 构造一个具有指定列数的新的空 TextField
JTextField(String text) 构造一个用指定文本初始化的新 TextField
JTextField(String text, int columns) 构造一个用指定文本和列初始化的新 TextField

密码框(JPasswordField)

JPasswordField 是一个轻量级组件,允许编辑单行文本,其视图指示键入内容,但不显示原始字符。

构造方法

方法 说明
JPasswordField() 构造一个新 JPasswordField,使其具有默认文档、为 null 的开始文本字符串和为 0 的列宽度
JPasswordField(Document doc, String txt, int columns) 构造一个使用给定文本存储模型和给定列数的新 JPasswordField
JPasswordField(int columns) 构造一个具有指定列数的新的空 JPasswordField
JPasswordField(String text) 构造一个利用指定文本初始化的新 JPasswordField
JPasswordField(String text, int columns) 构造一个利用指定文本和列初始化的新 JPasswordField

文本域(JTextArea)

JTextArea 是一个显示纯文本的多行区域。

构造方法

方法 说明
JTextArea() 构造新的 TextArea
JTextArea(Document doc) 构造新的 JTextArea,使其具有给定的文档模型,所有其他参数均默认为 (null, 0, 0)
JTextArea(Document doc, String text, int rows, int columns) 构造具有指定行数和列数以及给定模型的新的 JTextArea
JTextArea(int rows, int columns) 构造具有指定行数和列数的新的空 TextArea
JTextArea(String text) 构造显示指定文本的新的 TextArea。
JTextArea(String text, int rows, int columns) 构造具有指定文本、行数和列数的新的 TextArea

使用示例

例子仅仅展示上述组件的显示状态。

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JToggleButton;

public class SwingDemo extends JFrame
{
   public SwingDemo()
   {
      super("SwingDemo");
      JPanel root = new JPanel();
      root.add(new JButton("我是JButton"));
      root.add(new JToggleButton("我是JToggleButton"));
      root.add(new JLabel("我是JLabel"));
      root.add(new JCheckBox("我是JCheckBox"));
      root.add(new JRadioButton("我是JRadioButton"));
      root.add(new JTextField("我是JTextField"));
      root.add(new JPasswordField("我是JPasswordField"));
      root.add(new JTextArea("我是JTextArea"));
      add(root);
      setSize(400, 300);
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      setVisible(true);
   }

   public static void main(String[] args)
   {
      new SwingDemo();
   }
}

运行效果:

时间: 2024-10-25 23:57:10

JAVA图形界面(GUI)之常用组件的相关文章

JAVA图形界面(GUI)之容器

在Swing中,容器可以用来组织界面布局,容器中可以添加容器和组件.常用的有如下几种: 顶层容器:JFrame,JApplet,JDialog,JWindow 中间容器:JPanel,JScrollPane,JSplitPane,JToolBar 特殊容器:在GUI上起特殊作用的中间层,如JInternalFrame,JLayeredPane,JRootPane. 这篇博客将抽取其中几个常用容器为大家介绍,剩余的在之后用到了再介绍. JFrame JFrame是是个顶层容器,是屏幕上window

java图形界面之布局设计_java

在界面设计中,一个容器要放置许多组件,为了美观,为组件安排在容器中的位置,这就是布局设计.java.awt中定义了多种布局类,每种布局类对应一种布局的策略.常用的有以下布局类: •FlowLayout,依次放置组件. •BoarderLayout,将组件放置在边界上. •CardLayout,将组件像扑克牌一样叠放,而每次只能显示其中一个组件. •GridLayout,将显示区域按行.列划分成一个个相等的格子,组件依次放入这些格子中. •GridBagLayout,将显示区域划分成许多矩形小单元

怎样让Java图形界面程序启动时没有控制台窗口?

程序|控制|图形 缺水的海豚 写了一篇文章介绍 如何在C/C++中调用Java的方法 . 写得相当好,谢谢! 文章中提到, Java跨平台的特性使Java越来越受开发人员的欢迎,但也往往会听到不少的抱怨:用Java开发的图形用户窗口界面每次在启动的时候都会跳出一个控制台窗口,这个控制台窗口让本来非常棒的界面失色不少.怎么能够让通过Java开发的GUI程序不弹出Java的控制台窗口呢? 有一个秘密(JDK文档中没提到),可以简单地解决这个问题.如果想运行Java图形界面程序,也用不着费劲写一个这样

Java图形界面开发之简易记事本_java

在学习了Java事件之后,自己写了一个极其简单的记事本.用到了MenuBar,Menu,MenuITem等控件,事件包括ActionListener以及KeyListener. 代码如下: package com.package3; /* * 功能:简易记事本的开发,可以保存文件,打开文件,退出记事本 * author:ywq */ import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*

请问java图形界面编程中怎样改变消息提示框中确定按钮的文本内容啊?

问题描述 请问java图形界面编程中怎样改变消息提示框中确定按钮的文本内容啊? 问题补充:恩恩,swing的!请问怎么改啊?xiaolv 写道 解决方案 JOptionPane.setDefaultLocale(Locale.CHINA);JOptionPane.showMessageDialog(null, "11", "22",JOptionPane.INFORMATION_MESSAGE);这个按钮自动集成多语言.只能通来Locale来改.想要OK就用Loca

代码-Java图形界面 简易BMI计算器怎样设计算法

问题描述 Java图形界面 简易BMI计算器怎样设计算法 老师出差去了 布置作业做一个简易BMI计算器 写了半天才写出一个图形界面 不知道怎样实现键盘录入身高.体重,点击评估按钮得到BMI和结果(结果输出的是胖,瘦,正常三种情况) 代码.界面如下: 解决方案 你的核心问题是如何对按钮进行响应,需要看下ActionListener的相关方法. public class BMI extends JFrame{ private JLabel lblHeight; private JLabel lblW

swing-小弟想问一下,当前用来开发JAVA图形界面的主流是什么??

问题描述 小弟想问一下,当前用来开发JAVA图形界面的主流是什么?? AWT,SWT,SWING这三种哪个用户比较多?求各位前辈解答, 解决方案 swing用的比较多 解决方案二: swing 用的人多,但是比较麻烦 解决方案三: swing 用的人多,但是比较麻烦 解决方案四: swing 用的人多,但是比较麻烦 解决方案五: java web的整个流程是可以的. 解决方案六: java web的整个流程是可以的. 解决方案七: 现在都是搞java web开发了 没人用swing了 解决方案八

awt-关于java图形界面的问题

问题描述 关于java图形界面的问题 问题大概是这样的: 1.awt 2.在一个窗口中建了一个按钮,给这个按钮设置了监听器,点击它后会弹出窗口,但是我写了关闭方法,新弹出来的窗口仍然无法关闭,关闭父窗口就都关闭了. 3.还有一个就是重复点击这个按钮,会一直往外弹,这个怎么解决? 解决方案 可否贴上代码,供解答者调试呢? 这样说感觉也不太清楚呢. 解决方案二: 1.新弹出的窗口是JFrame的么,关闭时是否有其他代码在使用? 2.重复点击按钮会一直弹出,如果你只想弹出一个的话,你最好设置一个变量来

求java图形界面开发

问题描述 哪位大神告诉我怎样开发java图形界面的程序谢谢!!! 解决方案 解决方案二:你可以看一些相关内容,很多的解决方案三:看java的经典图形库awt和swing解决方案四:告诉你个Swing开发的好网站.http://www.java2s.com/CN/Code/Java/2D-Graphics-GUI/Transform.htm再告诉你个用swing做的3D程序,有源码的哦.....笑去吧.....http://www.sweethome3d.com做java开发,多逛开源网站,不管是

jav图形界面问题-关于java图形界面如何实现下拉框含有复选框

问题描述 关于java图形界面如何实现下拉框含有复选框 想要使用swing实现下拉框中含有复选框的功能;希望能支持多选;在网上没找到,这样的图形界面是不是真的做不出来啊???求解!!