跳到主要内容

05、ava Swing JButton

按钮是图形界面上常见的元素,在前面已经多次使用过它。在 Swing 中按钮是 JButton 类的对象,JButton 类的常用构造方法如下。

  • JButton():创建一个无标签文本、无图标的按钮。
  • JButton(Icon icon):创建一个无标签文本、有图标的按钮。
  • JButton(String text):创建一个有标签文本、无图标的按钮。
  • JButton(String text,Icon icon):创建一个有标签文本、有图标的按钮。

JButton 类的常用方法如表所示:

方法名称 说明
addActionListener(ActionListener listener) 为按担组件注册 ActionListener 监听
void setIcon(Icon icon) 设置按钮的默认图标
void setText(String text) 设置按鈕的文本
void setMargin(Insets m) 设置按钮边框和标签之间的空白
void setMnemonic(int nmemonic) 设置按钮的键盘快捷键,所设置的快捷键在际操作时需要结合Alt 键进行实现
void setPressedIcon(Icon icon) 设置按下按钮时的图标
void setSelectedIcon(Icon icon) 设置选择按鈕时的图标
void setRolloveiicon(Icon icon) 设置鼠标移动到按扭区域时的图标
void setDisabledIcon(Icon icon) 设置按钮无效状态下的图标
void setVerticalAlignment(int alig) 设置图标和文本的垂直对齐方式
void setHorizontalAlignment(int alig) 设置图标和文本的水平对齐方式
void setEnable(boolean flag) 启用或禁用按扭
void setVerticalTextPosition(int textPosition) 设置文本相对于图标的垂直位置
void setHorizontalTextPosition(int textPosition) 设置文本相对于图标的水平位置

例1
使用JFrame 组件创建一个窗口,然后创建 4 个不同类型的按钮,再分别添加到窗口上显示。具体代码如下:

import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
public class JButtonDemo
{
   
     
    public static void main(String[] args)
    {
   
     
        JFrame frame=new JFrame("Java按钮组件示例");    //创建Frame窗口
        frame.setSize(400, 200);
        JPanel jp=new JPanel();    //创建JPanel对象
        JButton btn1=new JButton("我是普通按钮");    //创建JButton对象
        JButton btn2=new JButton("我是带背景颜色按钮");
        JButton btn3=new JButton("我是不可用按钮");
        JButton btn4=new JButton("我是底部对齐按钮");
        jp.add(btn1);
        btn2.setBackground(Color.YELLOW);    //设置按钮背景色
        jp.add(btn2);
        btn3.setEnabled(false);    //设置按钮不可用
        jp.add(btn3);
        Dimension preferredSize=new Dimension(160, 60);    //设置尺寸
        btn4.setPreferredSize(preferredSize);    //设置按钮大小
        btn4.setVerticalAlignment(SwingConstants.BOTTOM);    //设置按钮垂直对齐方式
        jp.add(btn4);
        frame.add(jp);
        frame.setBounds(300, 200, 600, 300);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

上述代码创建了 1 个 JFrame 窗口对象、1 个 JPanel 面板对象和 4 个 JButton 按钮,然后调用 JButton 类的 setBackground() 方法、setEnabled() 方法、setPreferredSize() 方法和 setVerticalAlignment() 方法设置按钮的显示外观。程序运行后 4 个按钮显示效果如图 1 所示。
 
谢谢观看