存储来自多个 jtable 的值
storing values from multiple jtable
我的应用程序需要在不同的 jtable 中显示不同的信息集,例如,如果应用程序有第 1 组结果、第 2 组结果和第 3 组结果,那么我需要在单独的单独选项卡中显示每个组为每个组使用单独的 jtable。当用户按下工具栏上的按钮时,我需要验证所有 jtable 并确保它们不为空。我面临的问题是 - 由于创建的 jtable 数量将是动态的(基于 运行 时间的组数),有人可以建议我一种设计方法来帮助我维护 jtables 列表创建并遍历 jtable。任何建议或参考示例都会有很大帮助!
示例代码:-
table.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e){
// here i need to print the JTable Name
}
});
您的问题 非常 广泛,也许过于广泛而无法充分回答,但您似乎需要 java.util.List<T>
的 东西(通常实现为 ArrayList<T>
)。那可能是 List<JTable>
,或者 List<ClassThatHoldsATable>
或者 List<ModelsForATable>
。通过这种方式,您可以根据需要在列表中添加或删除项目,遍历列表进行任何需要的验证,...等等
编辑:您已经编辑了您的问题,现在陈述的内容几乎相同。鉴于此编辑,我不太确定你被困在哪里。
编辑
根据您更新的问题和代码:
table.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e){
// here i need to print the JTable Name
}
});
问题:
- 我通常避免使用 mouseClicked,因为如果单击、稍微移动鼠标然后松开,它很容易不响应用户。我一般使用mousePressed方法。
- "JTable Name" 是什么意思?如果你指的是变量名,那么不要走那条路,因为变量名并不是那么有用。如果您指的是 JTable 对象引用,它比变量名重要得多,那么您已经知道了:
例如,
table.addMouseListener(new MouseAdapater() {
@Override // never forget this guy
public void mousePressed(MouseEvent e) {
// you've got your JTable reference right here!
JTable selectedTable = (JTable) e.getSource();
// now what you do with it will depend on your needs and your code
}
});
如果您绝对需要将对象与字符串相关联,请考虑使用 Map<JTable, String>
,例如 HashMap。
我的应用程序需要在不同的 jtable 中显示不同的信息集,例如,如果应用程序有第 1 组结果、第 2 组结果和第 3 组结果,那么我需要在单独的单独选项卡中显示每个组为每个组使用单独的 jtable。当用户按下工具栏上的按钮时,我需要验证所有 jtable 并确保它们不为空。我面临的问题是 - 由于创建的 jtable 数量将是动态的(基于 运行 时间的组数),有人可以建议我一种设计方法来帮助我维护 jtables 列表创建并遍历 jtable。任何建议或参考示例都会有很大帮助!
示例代码:-
table.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e){
// here i need to print the JTable Name
}
});
您的问题 非常 广泛,也许过于广泛而无法充分回答,但您似乎需要 java.util.List<T>
的 东西(通常实现为 ArrayList<T>
)。那可能是 List<JTable>
,或者 List<ClassThatHoldsATable>
或者 List<ModelsForATable>
。通过这种方式,您可以根据需要在列表中添加或删除项目,遍历列表进行任何需要的验证,...等等
编辑:您已经编辑了您的问题,现在陈述的内容几乎相同。鉴于此编辑,我不太确定你被困在哪里。
编辑
根据您更新的问题和代码:
table.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e){
// here i need to print the JTable Name
}
});
问题:
- 我通常避免使用 mouseClicked,因为如果单击、稍微移动鼠标然后松开,它很容易不响应用户。我一般使用mousePressed方法。
- "JTable Name" 是什么意思?如果你指的是变量名,那么不要走那条路,因为变量名并不是那么有用。如果您指的是 JTable 对象引用,它比变量名重要得多,那么您已经知道了:
例如,
table.addMouseListener(new MouseAdapater() {
@Override // never forget this guy
public void mousePressed(MouseEvent e) {
// you've got your JTable reference right here!
JTable selectedTable = (JTable) e.getSource();
// now what you do with it will depend on your needs and your code
}
});
如果您绝对需要将对象与字符串相关联,请考虑使用 Map<JTable, String>
,例如 HashMap。