当前位置: 首页 > 知识库问答 >
问题:

在GroupLayout中设置JPanel的大小

任飞龙
2023-03-14

我有一个JFrame,我已经将布局设置到GroupLayout。

我添加了两个Jpanel即workingPanel(红色)和backgroundPanel(绿色)。

代码是`import javax.swing.;导入java.awt;

public class Home extends JFrame{

JButton b1;
JPanel workingPanel,backgroundPanel;

public Home(){

    new JFrame("Restaurant Billing");
    b1=new JButton("Hello");
    workingPanel=new JPanel(); 
    backgroundPanel=new JPanel();
    int maximumWidth=getContentPane().getWidth();
    backgroundPanel.setSize(maximumWidth,60);
    workingPanel.setBackground(Color.red); //workingpanel backgroundcolor is red
    backgroundPanel.setBackground(Color.green);//backgroundPanle backcolor is green
    //creating grouplayout and setting to mainframe
    GroupLayout layout=new GroupLayout(getContentPane());
    getContentPane().setLayout(layout);

    layout.setHorizontalGroup(
        layout.createParallelGroup()
        .addComponent(backgroundPanel)
        .addComponent(workingPanel)
    );
      layout.setVerticalGroup(
        layout.createSequentialGroup()
        .addComponent(backgroundPanel)
        .addComponent(workingPanel)

      );


    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}
public void launchFrame(){

    this.setVisible(true);
}
}

请帮帮我。

共有2个答案

戚锦
2023-03-14

尝试使用prefferedSize属性。

backgroundPanel.setPrefferedSize(maximumWidth,60);
查淮晨
2023-03-14

您应该查看原始的GroupLayout教程。你在这里找到它!

向下滚动到组件大小和可调整大小,它应该可以回答您的问题!你在这里找到的一个secound代码!这是垃圾神的密码!

 类似资料:
  • 我有一个JFrame,里面装满了JPanel(下面的代码)。 我正在使用JPanel在里面画东西,例如,我可以在任何我喜欢的地方画线,但是当添加JLabel到它的时候,我不能把它移动到它卡住的任何地方 但问题是他们建议的解决方案对我不起作用。 很抱歉,如果我不清楚,我试图在创建Surface之前和之后在函数initUI()中添加上面的内容。 但是在那之后,框架显示几乎(1,1)大小和它的空(如果我

  • 问题内容: 假设我要使JPanel%20的不透明度可见。我的意思不是setOpaque(绘制或不绘制)或setVisible(显示或隐藏)…我的意思是使其透明JPanel ..您知道吗? 这可能吗? 问题答案: 您还应该查看具有透明度的背景,以了解使用此功能时可能遇到的任何绘画问题。

  • 问题内容: 我当前的问题是我有一个带有2x2 GridLayout的JFrame。在其中一个正方形内,我有一个JPanel,用于显示网格。我正在使用Java swing库进行实地调查… 图片 Java将自动扩展每个JLabel以适合屏幕。我希望它只是那些蓝色正方形(水)和黑色边框,而不是那个灰色空间。有没有一种方法可以永久设置JPanel的大小,这样我就不必在获得确切尺寸之前将JFrame的大小更

  • 问题内容: 我是Java的新手,开始学习挥杆技巧,并且在JFrame中调整JPanel的大小时遇到​​问题。我正在关注本教程: http://vincentramdhanie.blogspot.com/2009/11/cardlayout-with- netbeans.html 因为最终我将学习每种不同的布局,并且现在已经进入CardLayout。在上面,有一个JPanel用于状态面板。那也是我想

  • 我是Java新手,开始学习swing,在JFrame中调整JPanel的大小时遇到问题。我将学习本教程: http://vincentramdhanie.blogspot.com/2009/11/cardlayout-with-netbeans.html 因为最终我正在学习每一种不同的布局,现在我来到了CardLayout。在上面,有一个JPanel用于状态面板。这也是我想要做的,但是当我将一个J