2013-05-07 1 views
0

크기가 다른 직사각형을 그리는 방법, 한 프레임에 비례 적으로 맞추는 방법 (프레임이 고정되어 있다고 가정)프레임에 비례하여 사각형을 맞추는 방법은 무엇입니까?

public class Draw extends JComponent { 
    public void paint(Graphics g) { 
     int width = 100; 
     int length = 100; 
     g.drawRect(10, 10, width, length); 
    } 
} 

public class DrawRect { 
    public static void main(String[] a) { 
     JFrame frame = new JFrame(); 
     frame.setSize(400, 600)); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setVisible(true); 

     Container content = frame.getContentPane(); 
     content.add(new Draw()); 
    } 
} 

답변

2
  1. 사용자 정의 그림은 paintComponent(...) 방법이 아닌 paint() 메소드를 재정 의하여 수행된다. 이 조언은 매일 만들어집니다. 포럼에서 자세한 정보와 예제를 검색하십시오.

  2. 구성 요소에서 사용 가능한 공간을 알고 싶다면 getWidth() 및 getHeight() 메소드를 호출 할 수 있습니다. 이 값을 알면 직사각형을 그릴 크기를 결정할 수 있습니다.

  3. 프레임이 보이기 전에 구성 요소를 프레임에 추가해야합니다.

  4. getContentPane() 메소드를 사용할 필요가 없습니다. JDK5부터 컴포넌트를 프레임에 직접 추가 할 수 있으며, 컴포넌트가 컨텐츠 영역에 추가됩니다.

관련 문제