java - How to resize JPanel when JFrame is maximized? -


i new java swing, try create swing app format text. when click maximum button, text panel's length not resize, , middle panel takes large space.

and seems setresizable(false) not work

code

public class mainframe extends jframe {      private static final long serialversionuid = 7553142908344084288l;      private jtextarea fromtextarea;     private jtextarea totextarea;      public mainframe() {         super("jformatter");         panel mainpanel = new panel();         mainpanel.setlayout(new boxlayout(mainpanel, boxlayout.x_axis));         setcontentpane(mainpanel);          fromtextarea = createtextarea();          lines.setborder(borderfactory.creatematteborder(0, 1, 0, 1, color.light_gray));         lines.seteditable(false);         font f = new font(font.sans_serif, font.plain, 16);         lines.setfont(f);          jscrollpane fromtextareascrollpanel = new jscrollpane(fromtextarea);         fromtextareascrollpanel.setborder(borderfactory.createemptyborder(15, 5, 15, 5));         fromtextareascrollpanel.getviewport().add(fromtextarea);         fromtextareascrollpanel.setrowheaderview(lines);         mainpanel.add(fromtextareascrollpanel);         // control panel         mainpanel.add(createctrlpanel());          totextarea = createtextarea();         mainpanel.add(createtextareapanel(totextarea));          setdefaultcloseoperation(exit_on_close);         pack();         setresizable(false);         setvisible(true);         setlocationrelativeto(null);     }      private jpanel createctrlpanel() {         final jcombobox jcombobox = new jcombobox(formatters.keyset().toarray());         jcombobox.setborder(borderfactory.createtitledborder("text format"));          jbutton fmtbutton = new jbutton("format >>");         jpanel ctrpanel = new jpanel(new gridbaglayout());         ctrpanel.setborder(borderfactory.createemptyborder(0, 5, 0, 5));          gridbagconstraints gbc = new gridbagconstraints();         gbc.gridwidth = gridbagconstraints.remainder;         gbc.fill = gridbagconstraints.horizontal;         ctrpanel.add(jcombobox, gbc);         ctrpanel.add(box.createrigidarea(new dimension(50, 15)), gbc);         //gbc.fill = gridbagconstraints.none;         ctrpanel.add(fmtbutton, gbc);         return ctrpanel;     }      private jscrollpane createtextareapanel(jtextarea textarea) {         jscrollpane fromtextareascrollpanel = new jscrollpane(textarea);         //fromtextareascrollpanel.setpreferredsize(new dimension(300, 300));         fromtextareascrollpanel.setborder(borderfactory.createemptyborder(15, 5, 15, 5));         return fromtextareascrollpanel;     }      private jtextarea createtextarea() {         jtextarea textarea = new jtextarea(20, 40);         font f = new font(font.sans_serif, font.plain, 16);         textarea.setfont(f);         //fromtextarea.setlinewrap(true);         //textarea.setbackground(color.light_gray);         textarea.setmargin(new insets(0, 10, 0, 10));         return textarea;     }      public static void main(string[] args) {         new mainframe();     } } 

result: when maxium

try make layout this: enter image description here

code:

import java.awt.eventqueue; import java.awt.gridbagconstraints; import java.awt.gridbaglayout; import java.awt.insets;  import javax.swing.jbutton; import javax.swing.jcombobox; import javax.swing.jframe; import javax.swing.jpanel; import javax.swing.jscrollpane; import javax.swing.jtextarea; import javax.swing.border.emptyborder;  public class test extends jframe {      private jpanel contentpane;      /**      * launch application.      */     public static void main(string[] args) {         eventqueue.invokelater(new runnable() {             public void run() {                 try {                     test frame = new test();                     frame.setvisible(true);                 } catch (exception e) {                     e.printstacktrace();                 }             }         });     }      /**      * create frame.      */     public test() {         setdefaultcloseoperation(jframe.exit_on_close);         contentpane = new jpanel();         contentpane.setborder(new emptyborder(5, 5, 5, 5));         setcontentpane(contentpane);         gridbaglayout gbl_contentpane = new gridbaglayout();          gbl_contentpane.columnwidths = new int[]{0, 0, 0, 0};         gbl_contentpane.rowheights = new int[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};         gbl_contentpane.columnweights = new double[]{0.0, 0.0, 1.0, double.min_value};         gbl_contentpane.rowweights = new double[]{1.0, 0.0, double.min_value};         contentpane.setlayout(gbl_contentpane);          jscrollpane scrollpane = new jscrollpane();         gridbagconstraints gbc_scrollpane = new gridbagconstraints();         gbc_scrollpane.gridheight = 2;         gbc_scrollpane.insets = new insets(0, 0, 0, 5);         gbc_scrollpane.fill = gridbagconstraints.both;         gbc_scrollpane.gridx = 0;         gbc_scrollpane.gridy = 0;         gbc_scrollpane.weightx=1;         contentpane.add(scrollpane, gbc_scrollpane);          jtextarea textarea = new jtextarea();         scrollpane.setviewportview(textarea);          jpanel panel = new jpanel();         gridbagconstraints gbc_panel = new gridbagconstraints();         gbc_panel.gridheight = 2;         gbc_panel.insets = new insets(0, 0, 5, 5);         //gbc_panel.fill = gridbagconstraints.both;         gbc_panel.gridx = 1;         gbc_panel.gridy = 0;         contentpane.add(panel, gbc_panel);         gridbaglayout gbl_panel = new gridbaglayout();         gbl_panel.columnwidths = new int[]{0, 0, 0, 0};         gbl_panel.rowheights = new int[]{0, 0, 0, 0, 0, 0};         gbl_panel.columnweights = new double[]{0.0, 0.0, 1.0, double.min_value};         gbl_panel.rowweights = new double[]{0.0, 0.0, 0.0, 0.0, 0.0, double.min_value};         panel.setlayout(gbl_panel);          jcombobox combobox = new jcombobox();         gridbagconstraints gbc_combobox = new gridbagconstraints();         gbc_combobox.insets = new insets(0, 0, 5, 0);         gbc_combobox.fill = gridbagconstraints.horizontal;         gbc_combobox.gridx = 2;         gbc_combobox.gridy = 0;         gbc_combobox.weightx=0.0;         panel.add(combobox, gbc_combobox);          jbutton btnnewbutton = new jbutton(">>");         gridbagconstraints gbc_btnnewbutton = new gridbagconstraints();         gbc_btnnewbutton.insets = new insets(0, 0, 5, 0);         gbc_btnnewbutton.gridx = 2;         gbc_btnnewbutton.gridy = 1;         panel.add(btnnewbutton, gbc_btnnewbutton);          jscrollpane scrollpane_1 = new jscrollpane();         gridbagconstraints gbc_scrollpane_1 = new gridbagconstraints();         gbc_scrollpane_1.gridheight = 2;         gbc_scrollpane_1.fill = gridbagconstraints.both;         gbc_scrollpane_1.gridx = 2;         gbc_scrollpane_1.gridy = 0;         gbc_scrollpane_1.weightx=1;         contentpane.add(scrollpane_1, gbc_scrollpane_1);          jtextarea textarea_1 = new jtextarea();         scrollpane_1.setviewportview(textarea_1); pack();         }      } 

Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -