-
Bug
-
Resolution: Not an Issue
-
P3
-
None
-
1.0
-
generic
-
solaris_2.5
[ dood 4/8/96 ]
The size of a Frame seems to include the window decorations
(ie, the title bar, resize handles, etc). Run the following program
and you will see that the line drawn from (0, 0) to (width, height)
actually gets painted from one corner of the Frame's outer
decorations to the other.
While this may be useful for some things, it makes it
really difficult to position children, or paint into a Frame
in such a way that you can ensure they won't be covered
by the window decorations (especially since there is no
interface to determine the size of the decorations which
vary depending on the window system).
//
// FrameBug.java - illustrates that the size of a frame includes
// the window decorations
//
import java.awt.*;
public class FrameBug extends Frame {
public void paint(Graphics g) {
g.drawLine(0, 0, size().width, size().height);
}
public static void main(String args[]) {
FrameBug f = new FrameBug();
f.resize(500, 300);
f.show();
}
}
The size of a Frame seems to include the window decorations
(ie, the title bar, resize handles, etc). Run the following program
and you will see that the line drawn from (0, 0) to (width, height)
actually gets painted from one corner of the Frame's outer
decorations to the other.
While this may be useful for some things, it makes it
really difficult to position children, or paint into a Frame
in such a way that you can ensure they won't be covered
by the window decorations (especially since there is no
interface to determine the size of the decorations which
vary depending on the window system).
//
// FrameBug.java - illustrates that the size of a frame includes
// the window decorations
//
import java.awt.*;
public class FrameBug extends Frame {
public void paint(Graphics g) {
g.drawLine(0, 0, size().width, size().height);
}
public static void main(String args[]) {
FrameBug f = new FrameBug();
f.resize(500, 300);
f.show();
}
}