2011-07-21 17 views

答えて

0

垂直増加の場合:JSpinnerの高さを上げるだけです。 水平方向の増加の場合:矢印の幅を使用して境界線を設定する特別なレイアウトマネージャを使用します。 JSpinnerには3つのコンポーネントがあります:最初の2つは上下の矢印で、3つ目はテキストフィールドです。

0

ボタンサイズの変更を処理するこのメソッドを作成しました。私はタッチスクリーン用の大きなボタンが欲しかった。私は時間と時間を設定するためにこれを使用します。それは完全に2文字の幅を処理します。

public static void setScrollBarWidthOnJSpinnerWith2Numbers(JSpinner spinner) { 
    spinner.setLayout(null); 
    int fontSize = 160; 
    int buttonSize = 87; 
    Component c = spinner.getComponent(0); 
    if (c instanceof BasicArrowButton) { 
     BasicArrowButton b = (BasicArrowButton) c; 
     b.setBounds(190, 2, 0, 0); 
     b.setSize(buttonSize, buttonSize); 
    } 
    Component c2 = spinner.getComponent(1); 
    if (c2 instanceof BasicArrowButton) { 
     BasicArrowButton b = (BasicArrowButton) c2; 
     b.setBounds(190, buttonSize + 2, 0, 0); 
     b.setSize(buttonSize, buttonSize); 
    } 
    Component c3 = spinner.getComponent(2); 
    if (c3 instanceof NumberEditor || c3 instanceof ListEditor) { 
     DefaultEditor ne = (DefaultEditor) c3; 
     ne.setBounds(2, 2, 10, 20); 
     ne.setSize(180, fontSize); 
     ne.setAlignmentY(0); 
    } 
    spinner.setFont(new Font("Tahoma", Font.PLAIN, fontSize)); 
    spinner.setSize(new Dimension(279, 179)); 
} 
関連する問題