gpt4 book ai didi

java - 关于在 Swing 页面上添加容器的问题

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

public class POSToolBar extends JFrame {

/**
* Launch the application.
*/
private BrowserToolBar toolBar;

public POSToolBar() {
super("POS");
Container content = getContentPane();
content.setBackground(Color.white);
toolBar = new BrowserToolBar();
content.add(toolBar, BorderLayout.NORTH);
pack();
setVisible(true);
}
}

上面的代码为我生成了一个工具栏。现在我想在所有其他 Swing 页面上使用此工具栏。我继承/扩展了这个类并使用frame.add(new POSToolbar()),但它显​​示了一个异常“java.lang.IllegalArgumentException:向容器添加一个窗口”如何在我的其他 Swing 页面上添加此工具栏?

最佳答案

如果您想在其他类中使用它,它必须扩展 JToolBar 而不是 JFrame。

import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;

public class TestApplication extends JFrame {
public static void main(String [] a){
TestApplication ta = new TestApplication();
TBar t = new TBar();
ta.setLayout(new BorderLayout());
ta.add(t,BorderLayout.NORTH);
ta.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ta.setPreferredSize(new Dimension(400,300));
ta.pack();
ta.setVisible(true);
}
}

class TBar extends JToolBar{
JButton b = new JButton("Hello");

public TBar(){
add(b);
}
}

关于java - 关于在 Swing 页面上添加容器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12330489/

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