Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4123869

Restarting the applet using GridBagLayout alters the layout of its components.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P4 P4
    • None
    • 1.1.6
    • tools



      Name: diC59631 Date: 03/30/98


      When restarting an applet which uses java.awt.GridBagLayout in
      appletviewer, it alters the layout of its components. This occurs
      in not only Win32 environment but also in Solaris. This problem
      can be found from JDK1.1.3 through JDK1.1.6K.
       
      Following code demonstrates the problem.
       
      <HTML>
      <Title>GridBagEx1</Title>
      <BODY>
      <applet code=GridBagEx1.class width=550 height=400>
      </applet>
      </BODY>
      </HTML>
       
      import java.awt.*;
      import java.util.*;
      import java.applet.Applet;
      public class GridBagEx1 extends Applet {
          protected void makebutton(String name,
                                    GridBagLayout gridbag,
                                    GridBagConstraints c) {
              Button button = new Button(name);
              gridbag.setConstraints(button, c);
              add(button);
          }
          public void init() {
              GridBagLayout gridbag = new GridBagLayout();
              GridBagConstraints c = new GridBagConstraints();
              setFont(new Font("Helvetica", Font.PLAIN, 14));
              setLayout(gridbag);
              c.fill = GridBagConstraints.BOTH;
              c.weightx = 1.0;
              makebutton("Button1", gridbag, c);
              makebutton("Button2", gridbag, c);
              makebutton("Button3", gridbag, c);
              c.gridwidth = GridBagConstraints.REMAINDER; //end row
              makebutton("Button4", gridbag, c);
              c.weightx = 0.0; //reset to the default
              makebutton("Button5", gridbag, c); //another row
              c.gridwidth = GridBagConstraints.RELATIVE; //next-to-last in row
              makebutton("Button6", gridbag, c);
              c.gridwidth = GridBagConstraints.REMAINDER; //end row
              makebutton("Button7", gridbag, c);
              c.gridwidth = 1; //reset to the default
              c.gridheight = 2;
              c.weighty = 1.0;
              makebutton("Button8", gridbag, c);
              c.weighty = 0.0; //reset to the default
              c.gridwidth = GridBagConstraints.REMAINDER; //end row
              c.gridheight = 1; //reset to the default
              makebutton("Button9", gridbag, c);
              makebutton("Button10", gridbag, c);
              setSize(300, 100);
          }
          public static void main(String args[]) {
                Frame f = new Frame("GridBag Layout Example");
                GridBagEx1 ex1 = new GridBagEx1();
                ex1.init();
                f.add("Center", ex1);
                f.pack();
                f.setSize(f.getPreferredSize());
                f.show();
          }
      }
      (Review ID: 27442)
      ======================================================================

            jmcilreesunw James Mcilree (Inactive)
            dindrigo Daniel Indrigo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: