java没有更新_java – JSlider没有更新?

在test()构造函数中初始化slider1变量后,添加这些行,以便可以在GUI中设置和显示jslider tick值:

slider1.setMajorTickSpacing( 5 );

slider1.setPaintLabels( true );

您可以自己更改刻度线间距,设置为5.使用add()方法添加滑块不是一个好习惯,请使用getContentPane().add(),因此您的构造函数应如下所示:

public test2()

{

slider1 = new JSlider(JSlider.VERTICAL, 0, 50, 0);

setLayout(new FlowLayout(FlowLayout.TRAILING));

slider1.setMajorTickSpacing( 5 );

slider1.setPaintLabels( true );

this.getContentPane().add(slider1);

}

我注意到你没有在main()方法中调用changeValue()方法.正如您的方法名称所暗示的那样,它似乎是一个setter,但是您没有参数化地给出设置值,这是一个好习惯吗?在我看来,事实并非如此.并且changeValue()与setValue()做同样的事情,为什么要创建冗余方法?无论如何,你可以使用这个:

public void changeValue (int newValue)

{

slider1.setValue(newValue);

}

在main方法中,使用以下语句:

test2 gui = new test2();

gui.changeValue( 25 );

要查看更改滑块值的直接影响,我的意思是更新它,使用按钮或其他组件,向其添加ActionListener,以便您可以在单击时更新滑块值.

button.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

changeValue( 25 ); // change 25 to desired value.

}

});

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值