首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置输入值JScrollBar的值

设置输入值JScrollBar的值
EN

Stack Overflow用户
提问于 2017-01-08 17:10:00
回答 1查看 268关注 0票数 0

我有一个jScrollbar,当我滚动它时(它的值从0到100),我想在textfield中显示这个值。这是如何从jScrollBar中获取值

代码语言:javascript
复制
AdjustmentListener adjListener;
adjListener = new AdjustmentListener() {
    public void adjustmentValueChanged(AdjustmentEvent evt) {
        System.out.println(evt.getValue());
    }
};

但是我不能把它放在输入中,因为我得到了cannot make static reference to non-static错误。

任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-08 17:40:56

您可以在范围属性或类属性中使用变量之间进行选择。

代码语言:javascript
复制
public class Main extends JFrame {

// Attibute version
// private final JTextField textfield = new JTextField( "0000" );

   Main() {
      super( "Hello, scrollbars!" );
      setDefaultCloseOperation( EXIT_ON_CLOSE );
      setLayout( new BoxLayout( getContentPane(), BoxLayout.Y_AXIS ));

      // this variable may be defined as attribute
      final JTextField textfield = new JTextField( "0000" );
      add( textfield );

      final JScrollPane scrollPane =
         new JScrollPane(
            new JList<>(
               new String[]{
                  "Hello", "Scrollbars",
                  "Hello", "Scrollbars",
                  "Hello", "Scrollbars",
                  "Hello", "Scrollbars",
                  "Hello", "Scrollbars",
               }));
      scrollPane.getVerticalScrollBar().addAdjustmentListener(
         e -> textfield.setText( String.format( "%04d", e.getValue())));
      add( scrollPane );

      pack();
      setLocationRelativeTo( null );
      setVisible( true );
   }

   public static void main( String[] args ) {
      new Main();
   }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41535387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档