[英]Displaying JList
再次我在从mysql数据库显示数据时遇到JList问题,我使用下面给出的代码,但它没有在屏幕上显示任何内容。
JFrame f8 = new JFrame("Schedule");
f8.setVisible(true);
f8.setSize(1000, 1000);
JPanel jpa1 = new JPanel(new GridBagLayout());
String query = "SELECT * FROM Location";
DefaultListModel model = new DefaultListModel();
DefaultListModel model1 = new DefaultListModel();
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
Statement stmt = null;
ResultSet rs;
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1/SPL", "root", "PWD");
stmt = (Statement) conn.createStatement();
rs = stmt.executeQuery(query);
while (rs.next()) {
String stadium = rs.getString("Stadium");
String city = rs.getString("City");
model.addElement(stadium);
model1.addElement(city);
}
JList list = new JList(model);
JList list1 = new JList(model1);
f8.add(jpa1);
jpa1.add(list);
list.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
list.setLayoutOrientation(JList.HORIZONTAL_WRAP);
list.setVisibleRowCount(1);
JScrollPane listScroller = new JScrollPane(list);
} catch (SQLException e) {
System.out.println("Message : " + e.getMessage());
}
你能告诉我,我在哪里错了吗?
很难说基于代码片段的问题是什么,更不用说一些难以阅读的无格式代码了,但......
你应该考虑:
气垫船的鳗鱼几乎击中了头上的钉子,但我原谅了他的原因,直到我开始拍摄你的整个部分代码我没有看到它。
代码的最后一行是
JScrollPane listScroller = new JScrollPane(list);
您永远不会将此滚动窗格添加到UI。 它具有从其前一个父级( jpa1
)中删除list
并添加到滚动窗格的效果,这不会在屏幕上显示任何内容。
我会跟随所有的Hovercraft充满鳗鱼的建议,然后弄清楚如何解决这个最后的问题......
jpa1.add(new JScrollPane(list));
应该就是这么做的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.