gpt4 book ai didi

java - 动态添加的JTable不显示

转载 作者:太空宇宙 更新时间:2023-11-04 09:01:45 25 4
gpt4 key购买 nike

这里是 Java 新手。我有一个 JFrame 添加到我的 netbeans 项目中,并向其中添加了以下方法,该方法创建了一个 JTable。问题是,由于某种原因,当我调用此方法时,JTable 没有显示。有什么建议吗?

public void showFromVectors(Vector colNames, Vector data) {     
jt = new javax.swing.JTable(data, colNames);
sp = new javax.swing.JScrollPane(jt);
//NB: "this" refers to my class DBGridForm, which extends JFrame
this.add(sp,java.awt.BorderLayout.CENTER);
this.setSize(640,480);
}

该方法在以下上下文中调用:

DBGridForm gf = new DBGridForm(); //DBGridForm extends JFrame
DBReader.outMatchesTable(gf);
gf.setVisible(true);

...其中 DBReader.outMatchesTable() 定义为

static public void outMatchesTable(DBGridForm gf) {
DBReader ddb = new DBReader();
ddb.readMatchesTable(null);
gf.showFromVectors(ddb.lastRsltColNames, ddb.lastRsltData);
}

我的猜测是我忽略了一些东西,要么是关于我正在使用的 swing 类,要么是关于 Java。有什么想法吗?

最佳答案

“这个”在你的上下文中不清楚。是在小程序里面吗? JFrame?

您可能遇到布局问题,请确保您已使用新的边框布局在类上调用 setLayout。

在 swing 应用程序中,您需要使用 getRootContentPane().add() 而不是原始 add(),具体取决于版本。

添加顶级内容的Java教程:http://java.sun.com/docs/books/tutorial/uiswing/components/toplevel.html

关于java - 动态添加的JTable不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/121715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com