如何设置JSpinner的值位置

时间:2014-09-07 14:45:12

标签: java swing

我在我的java代码中使用JSpinner,在JSpinner中,JSpinner的值出现在JSpinner的右侧但是我希望JSpinner的值应该出现在JSpinner的左侧,所以请告诉我们我能这样做吗?

1 个答案:

答案 0 :(得分:2)

您是否尝试通过getEditor()获取JSpinner的编辑器,然后通过getTextField()获取其文本字段。你可以设定它的方向。

import javax.swing.*;
import javax.swing.JSpinner.DefaultEditor;

public class OppositeSpinner {
   public static void main(String[] args) {
      JSpinner spinner = new JSpinner(new SpinnerNumberModel(50, 0, 100, 1));
      JFormattedTextField textField = ((DefaultEditor) spinner.getEditor()).getTextField();
      textField.setHorizontalAlignment(JTextField.LEFT);
      JOptionPane.showMessageDialog(null, spinner);
   }
}

或者,您可以通过Spinner.editorAlignment方法更改UIManager.put(...)属性的外观和值。如,

UIManager.put("Spinner.editorAlignment", JTextField.LEFT);

有关更完整的示例:

public static void main(String[] args) {
  UIManager.put("Spinner.editorAlignment", JTextField.LEFT);
  JSpinner spinner = new JSpinner(new SpinnerNumberModel(50, 0, 100, 1));
  JOptionPane.showMessageDialog(null, spinner);
}