我在JScrollPane
中添加JTable
,然後向面板添加滾動窗格,然後將面板添加到框架,但不起作用,這裏是代碼。我希望在表格或框架上具有滾動條,可以使表格滾動,以便用戶可以看到它。我已經嘗試了許多方法,但不爲我工作 這裏是整個代碼JScrollPane中的JTable
public class View extends JFrame {
private static final long serialVersionUID = 1L;
/**
* Launch the application.
*/
//here in the main method i it adds in the JFrame everything
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
View frame = new View();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public void showData() throws SQLException, ParseException {
panel = new JPanel();
panel_1 = new JPanel();
model_1 = new DefaultTableModel();
model_2 = new DefaultTableModel();
model_1.addColumn("Title");
model_1.addColumn("Priority ");
model_1.addColumn("DeadLine");
model_1.addColumn("Time");
model_1.addColumn("Progress");
model_2.addColumn("Task Title");
model_2.addColumn("Priority ");
model_2.addColumn("DeadLine");
model_2.addColumn("Time");
model_2.addColumn("Done");
Database obj = new Database();
ArrayList<Task> list = obj.getTasks();
for (int i = 0; i < list.size(); i++) {
Task task = list.get(i);
Object[] row = { task.title, task.priority, task.deadine,
task.time, task.progress };
// Comparing Dates
Calendar currentDate = Calendar.getInstance();
SimpleDateFormat formatter = new SimpleDateFormat("MM-d-yyyy");
String dateNow = formatter.format(currentDate.getTime());
java.util.Date systemDate = new SimpleDateFormat("MM-d-yyyy",
Locale.ENGLISH).parse(dateNow);
if (!task.deadine.before(systemDate)) {
// add row to to do tab
model_1.addRow(row);
} else {
// add row to done tab
model_2.addRow(row);
}
// **********************
}
toDoTable = new JTable(model_1);
doneTable = new JTable(model_2);
toDoTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
doneTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
toDoTable.setFillsViewportHeight(true);
doneTable.setFillsViewportHeight(true);
//here i add the JScrollPane and it doesnt work
JScrollPane jpane = new JScrollPane(toDoTable);
JScrollPane jpane1 = new JScrollPane(doneTable);
panel.add(jpane);
panel_1.add(jpane1);
panel.add(jpane);
panel_1.add(jpane1);
}
}
發佈更多驗證碼。目前發佈似乎沒問題。你如何將面板添加到主容器? SSCCE? – StanislavL
在這裏,而不是這樣做,** panel.add(jpane); **嘗試將此面板添加到一個JScrollPane,使表滾動,**添加(新的JScrollPane(面板))** – Amarnath