猿问

Gridbaglayout 布局问题(java swing)

大家好,因为我是 Java 编程的初学者,所以想在这里请教一些有经验的编码人员。所以我正在尝试制作一个库存系统,但我的布局有问题Image Link “年度余额”面板必须在“销售记录”面板下方,然后“销售记录”面板必须水平填充上方的空间。任何人都知道问题出在哪里。


public MainViewForm(String text)

{




       setTitle("Computer Warehouse ni SeQuoia");  

       setLayout(new GridBagLayout());

       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

       setSize(1200,900);        

       setResizable(true);

       setVisible(true);




       mBar = new JMenuBar();

        setJMenuBar(mBar);


       mFile = new JMenu("FILE");

    mBar.add(mFile);


    mEdit = new JMenu("EDIT");

    mBar.add(mEdit);


    mView = new JMenu("VIEW");

    mBar.add(mView);


    mSave = new JMenu("SAVE");

    mBar.add(mSave);


    tBSave = new JToggleButton("SAVE");

    mSave.add(tBSave);


    mHelp = new JMenu("HELP");

    mBar.add(mHelp);


     mOption = new JMenu("OPTION");

     mBar.add(mOption);


     mEnd = new JMenu("END");

     mBar.add(mEnd);


     tbExit = new JToggleButton("EXIT");

     mEnd.add(tbExit);



   dlyForm = new DailyForm();

   mtlyForm = new MonthlyForm();

   tForm = new TableForm();

   abForm = new AnnualBalanceForm();


   GridBagConstraints gbc_dlyForm = new GridBagConstraints();

   gbc_dlyForm.anchor=GridBagConstraints.FIRST_LINE_START;

   gbc_dlyForm.weightx=1;

   gbc_dlyForm.weighty=1;

   gbc_dlyForm.gridx=0;

   gbc_dlyForm.gridy=0;

   add(dlyForm,gbc_dlyForm );


   GridBagConstraints gbc_mtlyForm = new GridBagConstraints();

   gbc_mtlyForm.weightx=1;

   gbc_mtlyForm.weighty=1;

   gbc_mtlyForm.gridx=0;

   gbc_mtlyForm.gridy=0;

   gbc_mtlyForm.insets=new Insets(225,0,0,0);

   gbc_mtlyForm.anchor=GridBagConstraints.LINE_START;

   add(mtlyForm,gbc_mtlyForm);

心有法竹
浏览 134回答 1
1回答

料青山看我应如是

您尚未为这些约束指定gridx/ gridy。它们默认为RELATIVE,因此下一个组件在水平和垂直方向上移动。(如果我最想更改您的代码的一件事,那就是命名。我不关心类型(名称中),所以删除它,不要缩写剩余的有用词。另外值得注意的是在该GridBagConstraints数据被复制,这样你就可以重新使用他们在适当情况下)。
随时随地看视频慕课网APP

相关分类

Java
我要回答