私は Java Swing アプリケーションを持っており、スクロール可能な特別なサブ JPopupMenu を作成したので、ユーザーはこのスクリーンショットのようにスクロールして項目を 1 つ選択できます。
この投稿のコードを使用し、ここに貼り付けて確認できるようにしました: http://codeshare.io/Jgqa7
ユーザーがそのサブメニューから以前に選択した項目のこのサブメニューを開いた場合、選択された項目に自動的にスクロールして表示したいと思います。 ) JList のメソッド。私はこれを理解しようとしてしばらく時間を費やしましたが、進歩はありません。それで、これを達成する方法はありますか?
-------------------------------------------------- ------>編集:私が使用しているコード:
このコードを使用して、スクロール可能なメニューの「発明された」アイテムに強制的にスクロールしようとしましたが、失敗しました:
JScrollPopupMenu pm = (JScrollPopupMenu)myPopupMenu.getPopupMenu();
for( Component comp: myPopupMenu.getMenuComponents() ) {
if( comp instanceof JRadioButtonMenuItem ) {
JRadioButtonMenuItem rb = (JRadioButtonMenuItem)comp;
if( rb.getText().equals( "invented" ) ) {
myPopupMenu.scrollRectToVisible( rb.getBounds() ); // Does nothing.
pm.setSelected( rb ); // Does nothing.
}
}
}
何らかの理由で、必要な項目までスクロールしません!