필자는 java.awt.Frame의 하위 클래스를 만들고 윈도우의 전체 내용을 수동으로 그리려는 경우 paint() 메서드를 재정의했습니다.Mac OS X에서 AWT 프레임의 드로어 블 영역 가져 오기?
그러나, 그래픽스 오브젝트에 대해, (0,0) 내부 윈도우의 좌측 상부 코너 타이틀 바 장식하지 제 그리기 화소에 대응한다.
Mac OS X 관련 퍼지 요소를 사용하지 않고 첫 번째 드로어 블 픽셀의 좌표 (즉, 데코레이션의 높이)를 플랫폼 간 방식으로 결정할 수 있습니까? 윈도우의 실제 드로어 블 영역을 찾으려면 Panel 구성 요소를 중첩시켜야합니까?
여기 내 코드는 윈도우의 페인트 가능한 영역 내부의 파란색 사각형의 중심을 실패
@Override
public void paint (Graphics g) {
g.setColor(Color.BLUE);
g.setPaintMode();
g.fillRect(30, 30, getWidth()-60, getHeight()-60);
}
alt text http://x13n.com/paintable-area.png