How in Java to find the size and coordinates of the area (the rectangle in fact) in the JFrame, where can I draw?
That is, not counting the border JFrame and its upper part.

    2 answers 2

    I solved the problem by adding two lines of code before knowing the size of the available space.

    this.setVisible(true); this.setVisible(false); 

    I do not know why, but it works that way. After adding this.setVisible(true); size becomes known. Immediately after that I use this.setVisible(false); because Further components added to the panel are not displayed. Of course, at the end I use this.setVisible(true); again this.setVisible(true);

      To get the size of the area, use:

       frame.getContentPane().getSize(); 

      Before this, you must have frame.pack()


      For coordinates, use the JFrame getLocation() or getLocationOnScreen() methods that inherit from java.awt.Component.

      • When I use frame.pack (), the window becomes zero size, and I need a certain size. - Nikolay