JList を追加し、一度に 4 つのレコードのみを表示するようにしました。4 つ以上のレコードがある場合、ユーザーはスクロールして他のレコードを表示できる必要があります。しかし、私の場合、追加した 8 ~ 10 個のレコードすべてが表示されます。コードは最初の 4 つのレコードとスクロール バーを表示していません。誰かが私に欠けているものを教えてもらえますか?
import java.awt.BorderLayout;
public class FrameTest {
private JPanel panel;
private JFrame frame;
private FrameTest ft;
private JList list;
public FrameTest() {
initComponents();
ft = this;
}
private void initComponents() {
frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
panel = new JPanel();
panel.setBorder(new EmptyBorder(5, 5, 5, 5));
panel.setLayout(new BorderLayout(0, 0));
frame.getContentPane().add(panel);
list = new JList();
list.setVisibleRowCount(4);
list.setModel(new AbstractListModel() {
String[] values = new String[] {"adf", "gr", "rg", "g", "tg", "gt", "tg", "tg", "t", "gt", "gt"};
public int getSize() {
return values.length;
}
public Object getElementAt(int index) {
return values[index];
}
});
list.setSelectedIndex(1);
panel.add(list, BorderLayout.SOUTH);
frame.setLocationByPlatform(true);
frame.pack();
frame.setVisible(true);
}
}
注:上記は私のコードの簡略版です。