我的应用程序中有两个 JFrame。在第一个 JFrame 中有一个 JTable。当用户单击 JTable 时,我想获取单击行的对象,然后打开第二个 JFrame 并用该对象的元素填充其数据字段。
那么如何在 JFrame 之间传输对象呢?有人可以给我一个例子吗?
public void mouseClicked(MouseEvent mouseEvent) {
int row = getClickedRow(mouseEvent); /* dummy code */
Object rowObject = getRowObject(row); /* more dummy code */
JFrame2 jframe2 = ... /* get reference to jframe2 */
jframe2.setRowObject(rowObject);
jframe2.setVisible(true);
}
JFrame2
可能应该扩展JFrame
并包含以您认为合适的任何方式处理行对象的其他内容。
通常,一个应用程序只有一个主 JFrame。所以你应该使用 JDialog 作为子窗口,而不是 JFrame。
有人可以举个例子吗?
好吧,这些步骤似乎很简单:
a) 将 MouseListener 添加到表中
b) 将鼠标单击转换为行和/或列
c) 从表中获取数据
d) 使用数据作为参数创建一个 JDialog
那么您在哪些步骤上有问题?发布您的代码,显示您所做的事情。
那是发布一个简短的、独立的、正确的(可编译的)示例(SSCCE)。该示例应使用硬编码数据,而不是数据库中的数据,因为我们无权访问您的数据库。