"Snap" the window size in increments?

Hello all.
I am trying to accomplish two things with a small windowed program. This window contains 1 or more panels, which describe the current state of your Gmail account (it is a gmail notifier), that are a specific size.
I'd like to:
1) make sure the window is always large enough to show at least 1 panel.
2) "snap" a window resize so that it will not show half of a panel (only full panels).
Can anyone suggest a good way of doing this?
I've been trying to accomplish this by working with the size of the ContentPane in the main frame, but I've had limited success with it. Any additional suggestions would be greatly appreciated.

the frame size is adjusted but it is not "snapped" back to where I want it.What do you mean "is not snapped back". The following example alwasy seems to "snap back" to me.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FrameSize extends JFrame
     public FrameSize()
          //  Make sure frame doesn't exceed minimum/maximum values
          addComponentListener( new ComponentAdapter()
               public void componentResized(ComponentEvent e)
                    int width = getWidth();
                    int height = getHeight();
                    if (width < 200) width = 200;
                    if (width > 400) width = 400;
                    if (height < 200) height = 200;
                    if (height > 400) height = 400;
                    setSize(width, height);
     public static void main(String[] args)
          JFrame frame = new FrameSize();
          frame.setDefaultCloseOperation( JFrame.DISPOSE_ON_CLOSE );
          frame.setSize(300, 200);
          frame.setLocationRelativeTo( null );
          frame.setVisible(true);
}Now, I'm sure your panel has a few components added to it. So if you want further help create a simple demo that illustrates you problem. We can't guess what might be causing your problem since it works in a simple example.

Similar Messages

  • How do I set the window size of a course in SumTotal (LMS)

    I recently created an AICC course using Captivate 5.5 for a client using SumTotal as their LMS. When the client loads the course, the course launchs in a window that is smaller than the course itself; the user then has to adjust the window size to view the entire course. I have read on various posts that this cannot be controlled by myself through the .htm file settings, and that this has to be set within the LMS.
    So my question is: Where and how does the client set the course window size within SumTotal? Does anyone know?!
    thanks

    No, edit the html files that come with Captivate. Either hand edit the
    html file that is produced every time you publish, or locate the files
    in the Captivate 5 directory and customise them to suite your needs.
    Steve

  • How can I change the window size of iTunes?  Used to be easy before installing Mavericks.

    How can I change the window size of iTunes on my iMac?  Used to be easy before installing Mavericks.

    If you want to make the itunes tab so you can see the dock
    you press the
    esc
    button if your in full screen mode
    if you want to get into full screen mode you press the arrows facing away from eachother in the top right corner
    there is another way to get to the normal tab if your in full screen
    make the curser go right up to the top of the screen and it will show the apple tab
    it will have two arrows facing together highlited in blue
    if u tap that it will take you to the normal tab

  • Fit the image to window width, window height and  the window size

    hi all
    here we wrote the code for "fit the image to window width, window height and the window size". we are facing some problems in it. and all these operations have to perform even after zooming operations are done.if the below code doesnt satisfy kindly provide appropriate code .
    thanks .
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import java.awt.image.BufferedImage;
    import java.io.*;
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import java.io.File;
    import javax.swing.filechooser.FileFilter;
    import java.awt.geom.*;
    public class DP extends JFrame implements ActionListener,
                                               MouseListener,
                                               MouseMotionListener {
        private final int PEN_OP = 1;
        private final int CLEAR_OP = 2;
        private int radius;
        private int radius1;
        private int mousex = 0;
        private int mousey = 0;
        private int prevx = 0;
        private int prevy = 0;
        private boolean initialFreeHand = true;
        private boolean initialLine = true;
        private boolean initialEraser = true;
        private int Orx = 0;
        private int Ory = 0;
        private int OrWidth = 0;
        private int OrHeight = 0;
        private int drawX = 0;
        private int drawY = 0;
        private int polyX = 0;
        private int polyY = 0;
        private int eraserLength = 5;
        private int udefRedValue = 255;
        private int udefGreenValue = 255;
        private int udefBlueValue = 255;
        private int opStatus = PEN_OP;
        private int colorStatus = 1;
        private double zoomPercentage=10;
        private Color mainColor = new Color(0, 0, 0);
        private Color xorColor = new Color(255, 255, 255);
        private Color userDefinedColor =
            new Color(udefRedValue, udefGreenValue,udefBlueValue);
        private JButton openButton = new JButton("open");
        private JButton closeButton = new JButton("close");
         private JButton zoominButton = new JButton("ZoomIn");
         private JButton zoomoutButton = new JButton("ZoomOut");
         private JButton zoomto100Button = new JButton("ZoomTo100");
         private JButton fwwButton = new JButton("Fit window width");
         private JButton fwhButton = new JButton("Fit window height");
         private JButton fwButton = new JButton("Fit the window");
        private JButton clearButton = new JButton("Clear");
        private JTextField colorStatusBar = new JTextField(20);
        private JTextField opStatusBar = new JTextField(20);
        private JTextField mouseStatusBar = new JTextField(10);
        private JPanel controlPanel = new JPanel(new GridLayout(18, 1, 0, 0));
        JToolBar jToolbar = new JToolBar();
        private Container container;
        private JScrollBar horizantalSlide=new JScrollBar();
        public BufferedImage image;
        BufferedImage bgImage;
    //    public ImageIcon icon=null;
        JFileChooser fileChooser;
        DrawPanel drawPanel = new DrawPanel(bgImage,zoomPercentage);
        public DP() {
            super("WhiteBoard");
            fileChooser = new JFileChooser(".");
            container = getContentPane();
            container.setBackground(Color.white);
            container.setLayout(new BorderLayout());
            container.add(jToolbar,BorderLayout.NORTH);
            container.add(horizantalSlide);
            jToolbar.add(openButton);
            jToolbar.add(closeButton);
              jToolbar.add(zoominButton);
              jToolbar.add(zoomoutButton);
              jToolbar.add(zoomto100Button);
              jToolbar.add(fwwButton);
              jToolbar.add(fwhButton);
              jToolbar.add(fwButton);
            jToolbar.add(clearButton);
            colorStatusBar.setEditable(false);
            opStatusBar.setEditable(false);
            mouseStatusBar.setEditable(false);
            controlPanel.setBackground(Color.white);
            drawPanel.setBackground(Color.white);
            container.add(controlPanel, "West");
            container.add(drawPanel, "Center");
            openButton.addActionListener(this);
            closeButton.addActionListener(this);
              zoominButton.addActionListener(this);
              zoomoutButton.addActionListener(this);
              zoomto100Button.addActionListener(this);
              fwwButton.addActionListener(this);
              fwhButton.addActionListener(this);
              fwButton.addActionListener(this);
            clearButton.addActionListener(this);
            drawPanel.addMouseMotionListener(this);
            drawPanel.addMouseListener(this);
            addMouseListener(this);
            addMouseMotionListener(this);
            opStatusBar.setText("FreeHand");
            colorStatusBar.setText("Black");
        public void actionPerformed(ActionEvent e) {
            if(e.getActionCommand().equals("open"))
                showDialog();
            if(e.getActionCommand().equals("close"))
                closeDialog();
              if(e.getActionCommand().equals("ZoomIn"))
                   drawPanel.zoom(1);
              if(e.getActionCommand().equals("ZoomOut"))
                   drawPanel.zoom(-1);
              if(e.getActionCommand().equals("ZoomTo100"))
                   drawPanel.zoom(+10);
              if(e.getActionCommand().equals("Fit window width"))
                   drawPanel.fitwindowwidth();
              if(e.getActionCommand().equals("Fit window height"))
                   drawPanel.fitwindowheight();
              if(e.getActionCommand().equals("Fit the window"))
                   drawPanel.fitthewindow();
            if (e.getActionCommand() == "Clear")
                opStatus = CLEAR_OP;
            switch (opStatus) {
                case CLEAR_OP:
                    clearPanel();
        private void showDialog() {
            if(fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
                File file = fileChooser.getSelectedFile();
                try {
                    bgImage = ImageIO.read(file);
                } catch(IOException e) {
                    System.out.println("IO error: " + e.getMessage());
                clearPanel();
        private void closeDialog() {
            drawPanel.setVisible(false);
            drawPanel.repaint();
        public void clearPanel() {
            opStatusBar.setText("Clear");
            Graphics g = image.getGraphics();
            g.setColor(drawPanel.getBackground());
            g.fillRect(0, 0, drawPanel.getBounds().width, drawPanel.getBounds().height);
            if(bgImage != null)
                g.drawImage(bgImage, 0, 0, this);
            g.dispose();
            drawPanel.repaint();
        public boolean mouseHasMoved(MouseEvent e) {
            return (mousex != e.getX() || mousey != e.getY());
        public void setActualBoundry() {
            if (mousex < Orx || mousey < Ory) {
                if (mousex < Orx) {
                    OrWidth = Orx - mousex;
                    drawX = Orx - OrWidth;
                } else {
                    drawX = Orx;
                    OrWidth = mousex - Orx;
                if (mousey < Ory) {
                    OrHeight = Ory - mousey;
                    drawY = Ory - OrHeight;
                } else {
                    drawY = Ory;
                    OrHeight = mousey - Ory;
            } else {
                drawX = Orx;
                drawY = Ory;
                OrWidth = mousex - Orx;
                OrHeight = mousey - Ory;
        public void setGraphicalDefaults(MouseEvent e) {
            mousex = e.getX();
            mousey = e.getY();
            prevx = e.getX();
            prevy = e.getY();
            Orx = e.getX();
            Ory = e.getY();
            drawX = e.getX();
            drawY = e.getY();
            OrWidth = 0;
            OrHeight = 0;
        public void mouseDragged(MouseEvent e) {
            updateMouseCoordinates(e);
            switch (opStatus) {}
        public void mouseReleased(MouseEvent e) {
            updateMouseCoordinates(e);
            switch (opStatus) {}
        public void mouseEntered(MouseEvent e) {
            updateMouseCoordinates(e);
        public void updateMouseCoordinates(MouseEvent e) {
            String xCoor = "";
            String yCoor = "";
            if (e.getX() < 0)
                xCoor = "0";
            else {
                xCoor = String.valueOf(e.getX());
            if (e.getY() < 0)
                xCoor = "0";
            else {
                yCoor = String.valueOf(e.getY());
            mouseStatusBar.setText("x:" + xCoor + " y:" + yCoor);
        public void mouseClicked(MouseEvent e) { updateMouseCoordinates(e); }
        public void mouseExited(MouseEvent e) { updateMouseCoordinates(e); }
        public void mouseMoved(MouseEvent e) { updateMouseCoordinates(e); }
        public void mousePressed(MouseEvent e) { updateMouseCoordinates(e); }
        public static void main(String[] args) {
            DP wb = new DP();
            wb.setDefaultCloseOperation(EXIT_ON_CLOSE);
            wb.setSize(1024,740);
            wb.setVisible(true);
        private class DrawPanel extends JPanel {
            private double m_zoom = 1.0;
            private double m_zoomPercentage;
            private BufferedImage m_image;
            double theta = 0;
            double thetaInc = Math.PI/2;
            public DrawPanel(BufferedImage imageb,double zoomPercentage) {
                m_image = imageb;
                m_zoomPercentage = zoomPercentage / 100;
            protected void paintComponent(Graphics g) {
                Graphics2D g2d=(Graphics2D)g;
                if(image == null)
                    initImage();
                g2d.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
                                     RenderingHints.VALUE_INTERPOLATION_BICUBIC);
                double x = (1.0 - m_zoom)*getWidth()/2.0;
                double y = (1.0 - m_zoom)*getHeight()/2.0;
                AffineTransform at = AffineTransform.getTranslateInstance(x, y);
                at.rotate(theta,m_zoom*getWidth()/2,m_zoom*getHeight()/2);
                at.scale(m_zoom, m_zoom);
                g2d.drawRenderedImage(image, at);
      public void zoom(int inc) {
            m_zoom += inc * m_zoomPercentage;
            repaint();
              public void fitwindowwidth()
                int w1=drawPanel.getWidth();
                int h1=drawPanel.getHeight();
                BufferedImage image2=image.getScaledInstance(w1,h1,Image.SCALE_DEFAULT);
                drawPanel.setPreferredSize(new java.awt.Dimension(100,image2.getImage().getHeight(null)));
               drawPanel.repaint();
              public void fitwindowheight()
           BufferedImage image2=image.getScaledInstance(500,680,1); 
           drawPanel.setImage(iicon);
           drawPanel.setPreferredSize(new java.awt.Dimension(100,image2.getImage().getHeight(null)));
           drawPanel.repaint();
              public void fitthewindow()
           BufferedImage image2=image.getScaledInstance(1000,680,1);
           drawPanel.setPreferredSize(new java.awt.Dimension(100,image2.getImage().getHeight(null)));
           drawPanel.repaint();
            private void initImage() {
                int w = getWidth();
                int h = getHeight();
                image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
                Graphics2D g2 = image.createGraphics();
                g2.setPaint(getBackground());
                g2.fillRect(0,0,w,h);
                g2.dispose();
    }

    thank you for giving reply.
    your code is very helpful to us.but i couldn't integrate it in my code.here's my code.
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import java.awt.image.BufferedImage;
    import java.io.*;
    import javax.imageio.ImageIO;
    import javax.swing.*;
    import java.io.File;
    import javax.swing.filechooser.FileFilter;
    import java.awt.geom.*;
    public class IS extends JFrame implements ActionListener,
                                               MouseListener,
                                               MouseMotionListener {
        private final int PEN_OP = 1;
        private final int CLEAR_OP = 2;
         private     final int DISTORT = 3;
        private final int SCALE   = 4;
        private final int FIT     = 5;
        private final int FILL    = 6;
        int scaleMode = SCALE;
        private int radius;
        private int radius1;
        private int mousex = 0;
        private int mousey = 0;
        private int prevx = 0;
        private int prevy = 0;
        private boolean initialFreeHand = true;
        private boolean initialLine = true;
        private boolean initialEraser = true;
        private int Orx = 0;
        private int Ory = 0;
        private int OrWidth = 0;
        private int OrHeight = 0;
        private int drawX = 0;
        private int drawY = 0;
        private int polyX = 0;
        private int polyY = 0;
        private int eraserLength = 5;
        private int udefRedValue = 255;
        private int udefGreenValue = 255;
        private int udefBlueValue = 255;
        private int opStatus = PEN_OP;
        private int colorStatus = 1;
        private double zoomPercentage=10;
        private Color mainColor = new Color(0, 0, 0);
        private Color xorColor = new Color(255, 255, 255);
        private Color userDefinedColor =
            new Color(udefRedValue, udefGreenValue,udefBlueValue);
        private JButton openButton = new JButton("open");
        private JButton closeButton = new JButton("close");
         private JButton zoominButton = new JButton("ZoomIn");
         private JButton zoomoutButton = new JButton("ZoomOut");
         private JButton zoomto100Button = new JButton("ZoomTo100");
         private JButton fwwButton = new JButton("Fit window width");
         private JButton fwhButton = new JButton("Fit window height");
         private JButton fwButton = new JButton("Fit the window");
        private JButton clearButton = new JButton("Clear");
        private JTextField colorStatusBar = new JTextField(20);
        private JTextField opStatusBar = new JTextField(20);
        private JTextField mouseStatusBar = new JTextField(10);
        private JPanel controlPanel = new JPanel(new GridLayout(18, 1, 0, 0));
        JToolBar jToolbar = new JToolBar();
        private Container container;
        private JScrollBar horizantalSlide=new JScrollBar();
        public BufferedImage image;
        BufferedImage bgImage;
    //    public ImageIcon icon=null;
        JFileChooser fileChooser;
        DrawPanel drawPanel = new DrawPanel(bgImage,zoomPercentage);
        public IS() {
            super("WhiteBoard");
            fileChooser = new JFileChooser(".");
            container = getContentPane();
            container.setBackground(Color.white);
            container.setLayout(new BorderLayout());
            container.add(jToolbar,BorderLayout.NORTH);
            container.add(horizantalSlide);
            jToolbar.add(openButton);
            jToolbar.add(closeButton);
              jToolbar.add(zoominButton);
              jToolbar.add(zoomoutButton);
              jToolbar.add(zoomto100Button);
              jToolbar.add(fwwButton);
              jToolbar.add(fwhButton);
              jToolbar.add(fwButton);
            jToolbar.add(clearButton);
            colorStatusBar.setEditable(false);
            opStatusBar.setEditable(false);
            mouseStatusBar.setEditable(false);
            controlPanel.setBackground(Color.white);
            drawPanel.setBackground(Color.white);
            container.add(controlPanel, "West");
            container.add(drawPanel, "Center");
            openButton.addActionListener(this);
            closeButton.addActionListener(this);
              zoominButton.addActionListener(this);
              zoomoutButton.addActionListener(this);
              zoomto100Button.addActionListener(this);
              fwwButton.addActionListener(this);
              fwhButton.addActionListener(this);
              fwButton.addActionListener(this);
            clearButton.addActionListener(this);
            drawPanel.addMouseMotionListener(this);
            drawPanel.addMouseListener(this);
            addMouseListener(this);
            addMouseMotionListener(this);
            opStatusBar.setText("FreeHand");
            colorStatusBar.setText("Black");
        public void actionPerformed(ActionEvent e) {
            if(e.getActionCommand().equals("open"))
                showDialog();
            if(e.getActionCommand().equals("close"))
                closeDialog();
              if(e.getActionCommand().equals("ZoomIn"))
                   drawPanel.zoom(1);
              if(e.getActionCommand().equals("ZoomOut"))
                   drawPanel.zoom(-1);
              if(e.getActionCommand().equals("ZoomTo100"))
                   drawPanel.zoom(+10);
              if(e.getActionCommand().equals("Fit window width"))
                   //drawPanel.fitwindowwidth();
              drawPanel.scaleImage(0,0,0,0);
              if(e.getActionCommand().equals("Fit window height"))
              drawPanel.scaleImage(0,0,0,0);
              if(e.getActionCommand().equals("Fit the window"))
              drawPanel.scaleImage(0,0,0,0);
            if (e.getActionCommand() == "Clear")
                opStatus = CLEAR_OP;
            switch (opStatus) {
                case CLEAR_OP:
                    clearPanel();
        private void showDialog() {
            if(fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
                File file = fileChooser.getSelectedFile();
                try {
                    bgImage = ImageIO.read(file);
                } catch(IOException e) {
                    System.out.println("IO error: " + e.getMessage());
                clearPanel();
        private void closeDialog() {
            drawPanel.setVisible(false);
            drawPanel.repaint();
        public void clearPanel() {
            opStatusBar.setText("Clear");
              int w = image.getWidth();
            int h = image.getHeight();
            Graphics g = image.getGraphics();
            g.setColor(drawPanel.getBackground());
            g.fillRect(0, 0, w, h);
            if(bgImage != null) {
                int x = (w - bgImage.getWidth())/2;
                int y = (h - bgImage.getHeight())/2;
                g.drawImage(bgImage, x, y, this);
            g.dispose();
            drawPanel.repaint();
        public boolean mouseHasMoved(MouseEvent e) {
            return (mousex != e.getX() || mousey != e.getY());
        public void setActualBoundry() {
            if (mousex < Orx || mousey < Ory) {
                if (mousex < Orx) {
                    OrWidth = Orx - mousex;
                    drawX = Orx - OrWidth;
                } else {
                    drawX = Orx;
                    OrWidth = mousex - Orx;
                if (mousey < Ory) {
                    OrHeight = Ory - mousey;
                    drawY = Ory - OrHeight;
                } else {
                    drawY = Ory;
                    OrHeight = mousey - Ory;
            } else {
                drawX = Orx;
                drawY = Ory;
                OrWidth = mousex - Orx;
                OrHeight = mousey - Ory;
        public void setGraphicalDefaults(MouseEvent e) {
            mousex = e.getX();
            mousey = e.getY();
            prevx = e.getX();
            prevy = e.getY();
            Orx = e.getX();
            Ory = e.getY();
            drawX = e.getX();
            drawY = e.getY();
            OrWidth = 0;
            OrHeight = 0;
        public void mouseDragged(MouseEvent e) {
            updateMouseCoordinates(e);
            switch (opStatus) {
        public void mouseReleased(MouseEvent e) {
            updateMouseCoordinates(e);
            switch (opStatus) {}
        public void mouseEntered(MouseEvent e) {
            updateMouseCoordinates(e);
        public void updateMouseCoordinates(MouseEvent e) {
            String xCoor = "";
            String yCoor = "";
            if (e.getX() < 0)
                xCoor = "0";
            else {
                xCoor = String.valueOf(e.getX());
            if (e.getY() < 0)
                xCoor = "0";
            else {
                yCoor = String.valueOf(e.getY());
            mouseStatusBar.setText("x:" + xCoor + " y:" + yCoor);
        public void mouseClicked(MouseEvent e) { updateMouseCoordinates(e); }
        public void mouseExited(MouseEvent e) { updateMouseCoordinates(e); }
        public void mouseMoved(MouseEvent e) { updateMouseCoordinates(e); }
        public void mousePressed(MouseEvent e) { updateMouseCoordinates(e); }
        public static void main(String[] args) {
            IS wb = new IS();
            wb.setDefaultCloseOperation(EXIT_ON_CLOSE);
            wb.setSize(1024,740);
            wb.setVisible(true);
        private class DrawPanel extends JPanel {
            private double m_zoom = 1.0;
            private double m_zoomPercentage;
            private BufferedImage m_image;
            double theta = 0;
            double thetaInc = Math.PI/2;
            public DrawPanel(BufferedImage imageb,double zoomPercentage) {
                m_image = imageb;
                m_zoomPercentage = zoomPercentage / 100;
            protected void paintComponent(Graphics g) {
                   super.paintComponent(g);
                Graphics2D g2d=(Graphics2D)g;
                if(image == null)
                    initImage();
                g2d.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
                                     RenderingHints.VALUE_INTERPOLATION_BICUBIC);
                              int w = getWidth();
                    int h = getHeight();
                  int iw = image.getWidth();
                  int ih = image.getHeight();
                  if(scaleMode == SCALE) {
                double x = (w - m_zoom*iw)/2;
                double y = (h - m_zoom*ih)/2;
                AffineTransform at = AffineTransform.getTranslateInstance(x, y);
                at.rotate(theta,m_zoom*getWidth()/2,m_zoom*getHeight()/2);
                at.scale(m_zoom, m_zoom);
                g2d.drawRenderedImage(image, at);
                   else {
                scaleImage(w, h, iw, ih);
              private void scaleImage( int w, int h, int iw, int ih) {
                             Graphics2D g2d = image.createGraphics();
            double xScale = (double)w/iw;
            double yScale = (double)h/ih;
            AffineTransform at = new AffineTransform();
            if(scaleMode == DISTORT) {
                double x = (w - xScale*iw)/2;
                double y = (h - yScale*ih)/2;
                at.setToTranslation(x, y);
                at.scale(xScale, yScale);
            } else {
                double scale = (scaleMode == FIT) ? Math.min(xScale, yScale)
                                                  : Math.max(xScale, yScale);
                double x = (w - scale*iw)/2;
                double y = (h - scale*ih)/2;
                at.setToTranslation(x, y);
                at.scale(scale, scale);
            g2d.drawRenderedImage(image, at);
      public void zoom(int inc) {
            m_zoom += inc * m_zoomPercentage;
            repaint();
            private void initImage() {
                int w = getWidth();
                int h = getHeight();
                image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
                Graphics2D g2 = image.createGraphics();
                g2.setPaint(getBackground());
                g2.fillRect(0,0,w,h);
                g2.dispose();
    }

  • HOW DO YOU CHANGE THE WINDOW SIZE OF EBUSINESS SUITE ON STARTUP

    HOW DO YOU CHANGE THE WINDOW SIZE OF EBUSINESS SUITE ON STARTUP
    How do you change the window size for Ebusiness Suite after you log in. Currently it displays at 100% of the screen. I want to set it smaller, at some %

    I don't know if there is a way to set this. Some user's may prefer different sizes of window, depending on their job duties. For example, we have 170 Systems document management integrated with purchasing and payables so users shrink the Oracle window to fill about 60% of the screen while 170 uses the remaining 40% to display the scanned document.

  • JTextArea wordwrap according to the window size

    Hi All,
    I have a problem with JTextArea. I am constructing my UI as explained below:
    1. Panel with GridBagLayout.
    2. This panel have a grid of component. Each row will have a text area as a description and a text field to enter the value
    [ Text Area ] [Text Field]
    [ Text Area ] [Text Field]
    [ Text Area ] [Text Field]
    3. This panel is added to a scroll pane.
    Now the problem is when the description in the Text Area is large, then the horizontal scrollbar will be large. mean lot of horizontal scrolling.
    So I made text area to wrap at word boundaries and setting the columns size to 40. But now the problem is if the window is made large, still Text Area will wrap at 40th column leaving lot of empty area.
    So rather setting the column counts, i need the Text Area to wrap according to the window size. Is is possible? Looking for suggestions.....

    here comes the demo code. you can copy and run it.
    import java.awt.GridBagConstraints;
    import java.awt.GridBagLayout;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.SwingUtilities;
    public class TestScroll extends JFrame
         private int width;
         public void showUI()
              SwingUtilities.invokeLater(new Runnable()
                   public void run()
                        setSize(300,300);
                        setVisible(true);
                        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         public void init()
              JPanel panel = new JPanel(new GridBagLayout());
              GridBagConstraints gc = new GridBagConstraints();
              gc.fill = GridBagConstraints.HORIZONTAL;
              gc.weightx = 1; gc.weighty = 0;
              JTextArea area = new JTextArea("Please enter your name :");
              area.setOpaque(false);
              JTextField field = new JTextField(15);
              area.setWrapStyleWord(true);
              area.setLineWrap(true);
              panel.add(area,gc);
              gc.gridwidth = GridBagConstraints.REMAINDER;
              panel.add(field,gc);
              JScrollPane scroll = new JScrollPane(panel);
              //scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
              setContentPane(scroll);
         public static void main(String args[])
              TestScroll scroll = new TestScroll();
              scroll.init();
              scroll.showUI();
    }When you initially run it you can see that "Please enter your name is word wrapped.." when I expand the window, it unfolds (cool!) But when I shrink the window back, I expect the above to wrap again, rather than creating scrollbar :(.
    Note : I will need scrollbar, because I need to scroll vertically when there are many prompts for the user.
    Hope I have now clarified my query. Looking for a suggestion still !!

  • How to adjust the window size in overview screen of a scorecard ?

    Hi Experts,
    In <i>SEM</i> application is it possible to adjust the size of the "<b><i>Perspective</i></b>" windows in the Overview screen of a <i>Scorecard</i> ?
    If possible how ?

    hi,
    If you change the window size of the script in the original language, it should reflect in the other languages.
    Please activate the script in english once again and see the spanish form again.
    @SAP_WIZ
    As far as chaniging window size is concerned, Please edit your script in ES and then change it.Or login in ES and then edit the script.
    This is not possible, because the original script is in english.
    Regards
    HM

  • On a certain website the window size has become so huge I cannot use certain features and am unable to reduce the window size myself. It went huge as I was moving the cursor and I have been unable to ajust this. How do I alter screen size manually?

    Sometimes when moving the cursor the window size on certain sites reduces or increases. This happens randomly and I am not able to make it happen to change the size of the screen to my choice. The window on a particular site is now so huge I am unable to use features on there as they do not come into view on my window at all. Please help me on how to control this feature or in other words how do I increase or decrease the window size manually.

    See "Resizing oversize window" - MozillaZine Knowledge Base
    *http://kb.mozillazine.org/Resizing_oversize_window
    There are a couple of extensions tat could also be involved
    <br><small>Please mark "Solved" one answer that will best help others with a similar problem -- hope this was it.</small>

  • My new Firefox ver 29 always starts maximized how do i set the window size and not maximized?

    I had reinstall my Windows 7 (win 7 pro 64bit)
    so i had to reinstall firefox as well, installed ver 27 and updated it to version 29
    now when i start firefox it will start maximized and i want to set the window size when it starts,
    why the size of the window will not change and it will start maximized all the time?

    # In Firefox, type ''about:support'' into the address bar and press Enter.
    # Click the Show Folder button. A Windows Explorer window opens.
    # Right-click the Firefox taskbar icon and choose either Close All Windows or Close Window.
    # In the Windows Explorer window that opened earlier, delete the ''localstore.rdf'' file.
    # If you have Firefox pinned to the taskbar, right-click the taskbar icon, then right-click the Firefox icon in the menu that pops up and choose Properties.
    #* If you have a desktop shortcut, simply right-click it and choose Properties.
    # Click the Shortcut tab in the Properties window.
    # Make sure Run is set to "Normal window".

  • With OS X10.9 the Mail window (after hitting reply or forward) grows ridiculously long, sometimes 4 times the width of the screen and would not allow me to readjust the window size. Any one has the same problem? How shall I go about fixing it? (Thanks)

    With OS X10.9 the Mail window (after hitting reply or forward) grows ridiculously long, sometimes 4 times the width of the screen and would not allow me to readjust the window size. Any one has the same problem? How shall I go about fixing it? (Thanks)

    I'm having the same problem.  I've tried going into the Library and deleting the mail plist file(s), which fixes the problem, but only temporarily.  Would appreciate any help here too!

  • Is it possible to specify the window size when using opendocument?

    Does anyone know how to specify the window size for a child report launched from a hyperlink that uses opendocument? Is it possible?
    I have looked all of the posts I could find and have not found anything that would work, please help.

    So I have come up with the following URL based on the suggestions in this post, but it still isn't doing what I would like it to.
    It does launch a smaller window but posts the child report in the same window.  Is there something else I should do?
    Thanks for your help.

  • How can I control the window size of my output?

    Hi,
    I'm drawing a blank... How do I control the size of the window that my project is viewed in? Right now, it's the entire browser window.
    Thanks,
    Janice

    Hi,
    From your post, I assume you are creating WebHelp output.
    You  need to create a window for the help in the Project Set-up pod. Then,  you need to make sure you call the output so that the window is used.  See http://www.grainge.org/pages/authoring/calling_webhelp/calling_webhelp.htm.  This article on Peter's site give you an overview over the  possibilities of calling context sensitivive webhelp and also tells you  how to specify the needed window. Also, the installation directory of  RoboHelp 8 contains a directory called CSH API. In there are example  API's your developer can use to call the help.
    Greet,
    Willam

  • The window size of Photoshop (or any other) application?

    Hi!
    Is there a way to retrieve the size of the Photoshop (or any other Host) window? (On Mac it seems to be the whole screen?)
    I didn't find it in documentation
    Thank you!

    Hi Anastasiy Safari,
    I don't know about Photoshop, but InDesign's Window object has a bounds property that returns the window bounds in pixels.
    Thanks,
    Ole

  • Firefox doesn't remember the window size

    I recently upgraded my monitor and got a larger one. Now when I open FF it opens at a maximized window that doesn't fill the entire screen. So I'm forced to "minimize" it and "re-maximize" it. But when I close it does not remember the true maximized screen size.
    I already tried clearing localstore.rdf and by resetting menus under Safe Mode, but neither option worked.

    If Firefox is maximized then unmaximize to make the window smaller and close Firefox to save that setting.
    After restarting you can maximize again.
    Window sizes and positions are stored in [http://kb.mozillazine.org/localstore.rdf localstore.rdf] in the [http://kb.mozillazine.org/Profile_folder_-_Firefox Profile Folder].
    Delete ''localstore.rdf'' or rename to '''localstore.rdf.sav''' in the [http://kb.mozillazine.org/Profile_folder_-_Firefox Profile Folder] to test if the file is corrupted.
    See http://kb.mozillazine.org/Corrupt_localstore.rdf
    (caution: do not delete the localstore.rdf file in the Firefox program installation folder)
    Note:
    Deleting the file [http://kb.mozillazine.org/localstore.rdf localstore.rdf] will reset the customizations of the toolbars to the defaults.
    You can rename ''localstore.rdf'' to '''localstore.rdf.sav''' to test if that solves it.
    Then you can restore the customization by copying ''localstore.rdf.sav'' to ''localstore.rdf'' if it didn't work.

  • How to set the window size in form 10g

    Hi all
    i am migrating 6i forms to 10g
    when i am running my form in 10g some of the window is missing in the browser(internet explorer)
    how can i fit the size of the window in the browser????
    Thanks

    but is it compatible for different desktop resolutions????Set width and height 100% and set the seperateframe=true..it will for for all standard desktop resolution..
    hope it will helpfull

Maybe you are looking for