0

アラビア語で書かれたアイテムを含むjlistがありますが、残念ながら、アイテムが長いと、スクローラーが自動的に右にスクロールしないため、ロード後にすべてのアイテムが消えます。リストを手動で水平方向に右にスクロールする必要があります。

JListのcomponentOrientationを右に設定しました。

何か案が?

4

1 に答える 1

1

JList が JScrollPane にあると仮定すると、水平スクロール バーの値を設定できます。

final int maximum = scrollPane.getHorizontalScrollBar().getMaximum();
scrollPane.getHorizontalScrollBar().setValue(maximum);

ここの例のように:

final JFrame frame = new JFrame("JList horizontal auto-scroll to right");
frame.setBounds(100, 100, 80, 600);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
final String[] model = {"aaa", "bbbb", "ccccccccccccccccccccccccc"};
final JList<String> jList = new JList<String>(model);
jList.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
final JScrollPane scrollPane = new JScrollPane(jList);
frame.getContentPane().add(scrollPane);
final int maximum = scrollPane.getHorizontalScrollBar().getMaximum();
scrollPane.getHorizontalScrollBar().setValue(maximum);
frame.setVisible(true);

私の場合、ウィンドウは次のようになります。

スクリーンショット フレーム

于 2013-01-18T15:37:52.773 に答える