클래스 외부에서 창 너비 및 높이 가져오기
Java Swing으로 작업할 때 다양한 이유로 창 크기를 검색해야 하는 경우가 종종 있습니다. , 요소 크기 조정이나 위치 조정 등이 있습니다. 그러나 정의된 클래스 외부에서 getWidth() 또는 getHeight() 메서드를 호출하면 특히 창 크기가 조정될 때 부정확한 결과가 반환될 수 있습니다.
이 문제를 해결하기 위한 한 가지 접근 방식은 JPanel을 전달하는 것입니다. 창 크기가 필요한 메서드에 대한 인스턴스입니다. 이렇게 하면 해당 메서드 내에서 getWidth() 및 getHeight() 메서드에 직접 액세스할 수 있습니다.
예를 들어 다음 코드를 고려하세요.
public class MyPanel extends JPanel { private int jpWidth; private int jpHeight; @Override public void paint(Graphics g) { jpWidth = getWidth(); jpHeight = getHeight(); // ... } public void myMethod() { // Now you have access to `jpWidth` and `jpHeight` within this method } }
MyPanel을 myMethod() 메서드를 사용하면 창이 열려 있는 경우에도 업데이트된 창 크기에 액세스할 수 있는지 확인할 수 있습니다.
public class MyOtherClass { public void myMethod(MyPanel panel) { int panelWidth = panel.getWidth(); int panelHeight = panel.getHeight(); // ... } }
이 접근 방식을 사용하면 페인트() 메서드 내에서 잠재적으로 부정확할 수 있는 값에 의존하지 않고도 JPanel 클래스 외부에서 올바른 창 크기를 얻을 수 있습니다.
위 내용은 클래스 외부의 Java 스윙 창 너비와 높이를 어떻게 정확하게 얻을 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!