0
点赞
收藏
分享

微信扫一扫

图标式按纽,单选框和复选框

at小涛 2022-02-18 阅读 95

图标式按纽

  • 把图标放在JBuuton按纽上

  • 可以设置鼠标悬浮时提示

  • 单选框要放在一个组中


  • 如果先设置图片,程序会出问题

  • 第一次运行不显示图标,要操作一次窗口才会显示

  • 原因:图片太大了窗口显示不完全


import javax.swing.*;
import java.awt.*;
import java.net.URL;

public class ButtonIconDemo01 extends JFrame{
  public static void main(String[] args) {
    new ButtonIconDemo01().init();
    //new ButtonIconDemo01().testRadio();
    //new ButtonIconDemo01().testCheck();
  }

  public void init(){
    setBounds(100,100,300,300);
    setVisible(true);
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    URL resource = ButtonIconDemo01.class.getResource("天明 (3).jpg");
    ImageIcon imageIcon = new ImageIcon(resource);

    JButton button = new JButton();
    /**
     * 如果先设置图片,程序会出问题
     * 第一次运行不显示图标,要操作一次窗口才会显示
     *
     * 原因:图片太大了窗口显示不完全
     */
    add(button);

    button.setIcon(imageIcon);
    button.setToolTipText("这是一个图片按纽");

  }
  
  //单选框
  public void testRadio(){
    setBounds(100,100,600,600);
    setVisible(true);
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    setLayout(new FlowLayout());

    JRadioButton jRadioButton = new JRadioButton("a");
    JRadioButton jRadioButton1 = new JRadioButton("b");
    JRadioButton jRadioButton2 = new JRadioButton("c");

    ButtonGroup buttonGroup = new ButtonGroup();
    buttonGroup.add(jRadioButton);
    buttonGroup.add(jRadioButton1);
    buttonGroup.add(jRadioButton2);

    add(jRadioButton);
    add(jRadioButton1);
    add(jRadioButton2);

  }
  
  //复选框
  public void testCheck(){
    setBounds(100,100,600,600);
    setVisible(true);
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    setLayout(new FlowLayout());

    JCheckBox jCheckBox = new JCheckBox("苹果");
    JCheckBox jCheckBox1 = new JCheckBox("香蕉");
    JCheckBox jCheckBox2 = new JCheckBox("梨子");

    add(jCheckBox);
    add(jCheckBox1);
    add(jCheckBox2);

  }

}

先后为:ImageButton,redioButton和checkBox
ImageButton
radioButton
checkBox

举报

相关推荐

0 条评论