猿问

更改 JxBrowser JFrame 中 JButton 大小的问题

所以我正在使用 JxBrowser 并将其添加到 JFrame 中。现在我想在浏览器的右侧添加多个按钮,但无论我尝试什么都没有关系(test1.setSize 或 test1.setPreferredSize 等它不会改变大小)。


问题图片

此图片中的红色矩形是我想要在 JFrame 右侧的 JButton 大小的示例。为什么 JButton 保持那么大?


这是代码:


    public test() {

    test1 = new JButton("test");

    test1.addActionListener(this);

    browser = new Browser();

    view = new BrowserView(browser);


    JFrame frame = new JFrame("FOEBot - Gemaakt door Gerrit");

    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    frame.add(view, BorderLayout.CENTER);

    frame.add(test1, BorderLayout.AFTER_LINE_ENDS);

    frame.setSize(1500, 1000);

    frame.setLocationRelativeTo(null);

    frame.setVisible(true);


    browser.loadURL("https://www.google.nl/");

}

请帮帮我。


慕尼黑8549860
浏览 132回答 1
1回答

www说

您真的应该看看Layout 文档。在这里,您有一个示例,说明我如何解决您的问题。我将其JButtons放入另一个容器中用作BoxLayout:public static void main(String[] args) {    JPanel mainContainer = new JPanel();    mainContainer.setLayout(new BorderLayout());    JFrame jf = new JFrame();      jf.add(mainContainer);    JPanel browser = new JPanel();    JLabel browserDummy = new JLabel("Browser");    browser.add(browserDummy);    browserDummy.setFont(new Font("Arial", Font.BOLD, 200));    JPanel buttonContainer = new JPanel();    buttonContainer.setLayout(new BoxLayout(buttonContainer, BoxLayout.Y_AXIS));    buttonContainer.add(new JButton("Button one"));    buttonContainer.add(new JButton("Button two"));    mainContainer.add(browser, BorderLayout.WEST);    mainContainer.add(buttonContainer, BorderLayout.EAST);    jf.setVisible(true);    jf.pack();    jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}我从来没有在 Swing 中对浏览器编程做过任何事情,所以我只是使用了一些假人,但原理应该是一样的。结果:
随时随地看视频慕课网APP

相关分类

Java
我要回答