java slider gkwr_Java Swing GUI 入门-Checkbox和Slider

java Swing GUI 入门-Checkbox和Slider

觉得有用的话,欢迎一起讨论相互学习~

c8a597895237a09ffe2123824c14b080.png8611a7aff46786098b4f4e62a4f333be.pnge3fa8eb7b07286b650256b5033bef822.png

设计布局

Radio Button

Checkbox

JSlider

400ddf01060e049409562563672efd85.png

添加事件操作

对于checkbox主要关注的是其状态的变化,因此使用的是ChangeListener

a6a30fc466603689ca1491cc918177ec.png

professionalCheckBox.addChangeListener(new ChangeListener() {

@Override

public void stateChanged(ChangeEvent e) {

if (professionalCheckBox.isSelected()) {

feeField.setText("$120");

} else {

feeField.setText("$100");

}

}

});

* 对于radiobutton 一般情况下可以多选,为了避免多选的情况使用ButtonGroup,即新建一个ButtonGroup,并且将其他button绑定到这个ButtonGroup上.

对于slider,主要使用的是其范围的变化,其中范围可以根据maximum和minimum属性进行修改,并且value可以设置初始的值.

slider主要关注的是其状态的变化,因此使用的是ChangeListener

slider1.addChangeListener(new ChangeListener() {

@Override

public void stateChanged(ChangeEvent e) {

int handicap = slider1.getValue();

handiLabel.setText("Your Handicap: " + handicap);

}

});

}//end constructor

程序演示

a2e5f84eac32d59f91e26882366c55fe.gif

完整代码

import javax.swing.*;

import javax.swing.event.ChangeEvent;

import javax.swing.event.ChangeListener;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class GolfTourneyManager {

private JPanel mainPanel;

private JPanel panel1;

private JPanel panel2;

private JPanel panel3;

private JPanel panel4;

private JPanel panel5;

private JTextField textField1;

private JCheckBox professionalCheckBox;

private JRadioButton sandpiperRadioButton;

private JRadioButton mayfairRadioButton;

private JRadioButton blackHawkRadioButton;

private JRadioButton theRanchRadioButton;

private JTextField feeField;

private JButton REGISTERButton;

private JSlider slider1;

private JLabel handiLabel;

private JLabel logoLabel;

private JButton registerNowButton;

private JPanel TitleBarPanel;

public GolfTourneyManager() {

professionalCheckBox.addChangeListener(new ChangeListener() {

@Override

public void stateChanged(ChangeEvent e) {

if (professionalCheckBox.isSelected()) {

feeField.setText("$120");

} else {

feeField.setText("$100");

}

}

});

slider1.addChangeListener(new ChangeListener() {

@Override

public void stateChanged(ChangeEvent e) {

int handicap = slider1.getValue();

handiLabel.setText("Your Handicap: " + handicap);

}

});

}//end constructor

public static void main(String[] args) {

JFrame frame = new JFrame("Golf Tourney Manager");

frame.setContentPane(new GolfTourneyManager().mainPanel);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.pack();

frame.setVisible(true);

}

private void createUIComponents() {

}

}//end class

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值