【问题标题】:how to add an event to my slider code如何将事件添加到我的滑块代码
【发布时间】:2012-03-28 16:21:08
【问题描述】:

如何向此代码添加事件,以便在拖动滑块时显示数字。请让我知道,因为我是 Java 新手..

import javax.swing.*;

public class Slider extends JFrame {

    JSlider pickNum = new JSlider(JSlider.HORIZONTAL, 0, 30, 5);

    public Slider() {
        super("Slider");
        this.pack();
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        pickNum.setMajorTickSpacing(10);
        pickNum.setMinorTickSpacing(1);
        pickNum.setPaintTicks(true);
        pickNum.setPaintLabels(true);
        getPointedValue();
        this.add(pickNum);
        this.setVisible(true);
    }

    public final int getPointedValue() {
        int value;
        value = pickNum.getValue();
        return value;
    }

    public static void main(String[] args) {
        Slider frame = new Slider();
        int i;
        i = frame.getPointedValue();
        System.out.println("current value is:" + i);
    }
}

【问题讨论】:

  • 不要使用Java保留字作为类名使用MySlider而不是Slider,不要扩展JFrame,因为这是直接解决问题的途径,主要空白中的GUI相关代码应包装到invokeLater ,更多阅读Initial Threads

标签: java swing jslider changelistener


【解决方案1】:

【讨论】:

  • @henry joseph 可能很重要,也可能不重要,您可以查看 BoundedRangeModel 并将 ChangeListener 添加到此模型中
【解决方案2】:

作为使用ChangeListener 的具体示例,SpinSlider 展示了如何连接JSlider 和JSpinner。

【讨论】:

    猜你喜欢
    • 2020-03-11
    • 2018-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多