Как разместить панели на панеле Swing? - Java
Формулировка задачи:
Здравствуйте! Пытаьс повторить размещение панелей, как на этом изображении:
но у меня совсем не выходит.
Я пробовал использовать разные менеджеры компоновки, и, как я понял, больше всего подходит GridBagLayout, но я никак не понимаю, как мне задать размеры отдельной строки/столбца относительно размера окна.
Буду благодарен за помощь.
Решение задачи: «Как разместить панели на панеле Swing?»
textual
Листинг программы
// Elements of window this.main_p=new Panel(this.main_background, d.width, d.height); this.title_p=new Panel(this.block_background, d.width*4/15, d.height*17/180); this.tasks_p=new Panel(this.block_background, d.width*4/15, d.height*9/10); this.center_p=new Panel(this.block_background, d.width*4/15, d.height*34/45); this.brain_p=new Panel(this.block_background, d.width*4/15, d.height*137/360); this.body_p=new Panel(this.block_background, d.width*4/15, d.height*137/360); this.layout=new GridBagLayout(); this.main_p.setLayout(this.layout); GridBagConstraints gbc=new GridBagConstraints(); gbc.gridx=0; gbc.gridy=0; gbc.weightx=1.0; gbc.gridwidth=1; gbc.gridheight=3; gbc.fill=GridBagConstraints.BOTH; gbc.anchor=GridBagConstraints.SOUTHEAST; gbc.insets=new Insets(d.height/20, d.width/20, d.height/20, d.width/20); this.main_p.add(this.tasks_p, gbc); gbc=new GridBagConstraints(); gbc.gridx=1; gbc.gridy=0; gbc.weightx=1.0; gbc.weighty=1.0; gbc.gridwidth=1; gbc.gridheight=3; gbc.fill=GridBagConstraints.BOTH; gbc.anchor=GridBagConstraints.CENTER; gbc.insets=new Insets(d.height/20, d.width/20, d.height/20, d.width/20); this.main_p.add(this.title_p, gbc); gbc=new GridBagConstraints(); gbc.gridx=1; gbc.gridy=1; gbc.gridwidth=1; gbc.gridheight=2; gbc.fill=GridBagConstraints.BOTH; gbc.anchor=GridBagConstraints.CENTER; gbc.insets=new Insets(d.height/20, d.width/20, d.height/20, d.width/20); this.main_p.add(this.center_p, gbc); gbc=new GridBagConstraints(); gbc.gridx=2; gbc.gridy=1; gbc.gridwidth=1; gbc.gridheight=1; gbc.weightx=1.0; gbc.weighty=1.0; gbc.fill=GridBagConstraints.BOTH; gbc.anchor=GridBagConstraints.CENTER; gbc.insets=new Insets(d.height/20, d.width/20, d.height/20, d.width/20); this.main_p.add(this.brain_p, gbc); gbc=new GridBagConstraints(); gbc.gridx=2; gbc.gridy=2; gbc.gridwidth=1; gbc.gridheight=1; gbc.weightx=1.0; gbc.weighty=1.0; gbc.fill=GridBagConstraints.BOTH; gbc.anchor=GridBagConstraints.CENTER; gbc.insets=new Insets(d.height/20, d.width/20, d.height/20, d.width/20); this.main_p.add(this.body_p, gbc); this.add(this.main_p);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д