내 코드 :JPanel의 크기를 조정하지 않습니다
이public MyConstructor() {
view = new JPanel(new GridLayout(3, 1));
header = new JPanel(new GridLayout(2, 1));//2 ROWS 1 COLUMN
foot = new JLabel("Copyright...");
content = new JPanel();
info = new JLabel("");
logo = new JLabel() {
BufferedImage img;
@Override
public void paint(Graphics g) {
try {
img = ImageIO.read(new File("logo.jpg"));
} catch (IOException e) {
}
g.drawImage(img, 0, 0, null);
}
};
window.add(view);
header.add(logo);
header.add(info);
view.add(header);
view.add(content);
view.add(foot);
window.setLocation(width/2, 100);
window.setSize(width, height);
window.setPreferredSize(new Dimension(width, height));
content.setSize(window.getWidth(), height-70);
content.setPreferredSize(new Dimension(window.getWidth(), height-70));
}
"창"... 클래스가 JFrame의 내 클래스가 다른 사람에게 수퍼 클래스가 될 것입니다 프레임 확장되지되고, 서브 클래스가 상속 공개 콘텐츠 JPanel. 내 Super 클래스에서 너비와 높이를 3 GridLayout, 로고 및 정보 구성 요소 높이를 설정하려면 노력하고있어. 최대 높이를 70 추가 ... 다른 구성 요소를 설정했습니다 (보기, 머리글, 정보 , 로고) 서브 클래스가 액세스 할 수 없도록 ...
응용 프로그램이 실행되면 로그인 창이 표시되고 올바르게 표시되고 크기가 조정됩니다. 일단 하위 클래스 중 하나의 인스턴스가 생성되면 로그인 윈도우는 숨겨집니다. 사이트가 숨겨집니다. setVisible (false)
그러나 새 창이 표시되면 JFrame은 올바른 크기이지만 헤더, 내용 및 바닥 글은 currect 크기가 아닙니다. 각 구성 요소의 크기와 기본 크기를 설정했지만 여전히 작동하지 않습니다 ... 또한 repaint 및 validate/revalidate 호출 시도했습니다.
아이디어가 있습니까?
제 디자인에 다시 작업이 필요하다고 생각합니다 ... 모두에게 포인터를 주셔서 감사합니다. – zcourts