我正在使用 Swing 用 Java 编写一个程序,我希望将逻辑尽可能地与窗口设计分开,以便将来重新适应 android。
例如,我希望程序从 mySQL 检索数据,将其放入 Jtable 中并在 contentPane 中显示。如果我想在不同的类中编写 Jtable 的代码,该类创建它并插入数据,并且还提供一个在从主类(设计)调用时返回 Jtable 的方法......如下所示:
Jtable 所在的类(infoDisplayer):
public class InfoDisplayer {
static JScrollPane getTablaPathsSummary(){
String[] pathsSummaryColumnNames = {"1","2","3","4","5"};
Object[][] data = {
{"Kathy", "Smith","Snowboarding", new Integer(5), new Boolean(false)},
{"John", "Doe","Rowing", new Integer(3), new Boolean(true)},
{"Sue", "Black","Knitting", new Integer(2), new Boolean(false)},
{"Jane", "White","Speed reading", new Integer(20), new Boolean(true)},
{"Joe", "Brown","Pool", new Integer(10), new Boolean(false)}};
JTable pathsSelectionTable = new JTable(data,pathsSummaryColumnNames);
pathsSelectionTable.setPreferredScrollableViewportSize(new Dimension(500, 70));
pathsSelectionTable.setFillsViewportHeight(true);
JScrollPane pathsSelectionTableScrollPane = new JScrollPane(pathsSelectionTable);
return pathsSelectionTableScrollPane;
}
}
主类:
getContentPane().add(InfoDisplayer.getTablaPathsSummary(), BorderLayout.SOUTH);
我在此实现中看到的问题是,我无法从设计中查看/修改表,因为它是从外部方法 getTablaPathsSummary() 返回的。
请问有什么建议吗?
最佳答案
由于 getTablaPathsSummary 是外部源并且您无权更改,因此您无法继续使用此 Android 代码..
关于java - 如何将 Swing 设计与类分离,以便之后代码可以轻松转换为 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23130694/