Я хочу создать горизонтальную полосу прокрутки с максимальным значением, равным 2 (он должен позволять только выбирать 0, 1 или 2 в качестве значения), но ручка невидима, если значение меньше 11.JScrollBar: ручка не видна с малыми максимальными значениями
scrlLineDist = new JScrollBar();
scrlLineDist.setBlockIncrement(1);
scrlLineDist.addAdjustmentListener(new AdjustmentListener() {
public void adjustmentValueChanged(AdjustmentEvent e) {
System.out.println(scrlLineDist.getValue());
}
});
GridBagConstraints gbc_scrlLineDist = new GridBagConstraints();
gbc_scrlLineDist.insets = new Insets(0, 0, 5, 0);
gbc_scrlLineDist.fill = GridBagConstraints.HORIZONTAL;
gbc_scrlLineDist.gridx = 0;
gbc_scrlLineDist.gridy = 3;
panel_4.add(scrlLineDist, gbc_scrlLineDist);
scrlLineDist.setMaximum(2);
scrlLineDist.setToolTipText("");
scrlLineDist.setOrientation(JScrollBar.HORIZONTAL);
При изменении значения maximum
до 12, он работает так, как я хочу (видна кнопка, значение [0,2]). Почему это происходит?
scrlLineDist = new JScrollBar();
scrlLineDist.setBlockIncrement(1);
scrlLineDist.addAdjustmentListener(new AdjustmentListener() {
public void adjustmentValueChanged(AdjustmentEvent e) {
System.out.println(scrlLineDist.getValue());
}
});
GridBagConstraints gbc_scrlLineDist = new GridBagConstraints();
gbc_scrlLineDist.insets = new Insets(0, 0, 5, 0);
gbc_scrlLineDist.fill = GridBagConstraints.HORIZONTAL;
gbc_scrlLineDist.gridx = 0;
gbc_scrlLineDist.gridy = 3;
panel_4.add(scrlLineDist, gbc_scrlLineDist);
scrlLineDist.setMaximum(12);
scrlLineDist.setToolTipText("");
scrlLineDist.setOrientation(JScrollBar.HORIZONTAL);
Упс, вы являются правильными. Спасибо! –