gpt4 book ai didi

java - 将 JPanel 添加到 Netbeans 中的 JFrame

转载 作者:行者123 更新时间:2023-11-30 04:47:30 25 4
gpt4 key购买 nike

我在 Netbeans 中创建了 JFrame 类,并使用生成器添加了 jPanel。我还有一个类,它扩展了JPanel。现在我想创建此类的对象,并将其添加到 JFrame 中我的面板所在的位置,但我找不到正确的方法,因为我尝试的所有操作都没有结果

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {
Frame f = new Frame();
jPanel1 = new MyPanel();
f.pack();
f.setVisible(true);
}
});

好吧,也许我会展示更精确的例子,我在说什么:

第一个文件:

class MyPanel extends javax.swing.JPanel {
public MyPanel() {
initComponents();

}
}

另一个文件,带有框架:

public class Frame extends javax.swing.JFrame {
public Frame() {
initComponents();
}
public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {
Frame f = new Frame();
MyPanel p = new MyPanel();
jPanel1 = p;
}
});
}
private javax.swing.JButton jButton1;
private javax.swing.JPanel jPanel1;

我想在 jPanel1 的位置设置 - object MyPanel

最佳答案

以上答案是正确的 - 您实际上需要将此 MyPanel 添加到框架的 contentPane。

此外,您可能应该使用 Swing 而不是普通的 AWT。代码如下所示:

SwingUtilities.invokeLater(new Runnable() {

@Override //annotation if you are using Java >= 1.5
public void run() {
JFrame f = new JFrame();
MyPanel jPanel1 = new MyPanel();
f.getContentPane().add(jPanel1);
f.pack();
f.setVisible(true);
}
});

关于java - 将 JPanel 添加到 Netbeans 中的 JFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10623935/

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