저는 여러 화면이있는 곳에서 프로그램을 개발하고 있습니다. 예를 들어 초기 레이아웃에서 파일 만들기 또는 파일 편집의 두 가지 버튼을 제공하는 프로그램을 생각해보십시오. 하나를 클릭하면, 사용자는 그들이 누르는 버튼을 지원하는 새로운 화면으로 이동합니다. 그런 다음 다시 버튼을 클릭하면 프로그램의 기본 화면으로 돌아갑니다. 나는 이런 식으로 분리 된 메뉴를 가장 잘하는 방법을 궁금해합니다. 각 화면을 설정하는 별도의 메소드를 만든 다음 "뒤로"버튼과 같은 버튼을 클릭 할 때 적절한 메소드를 호출하는 것이 가장 좋을까요? 이것은 내가 생각하고 있었던 것이지만, 이것을 수행 할 수있는 많은 방법이 있으므로, 나는 화면을 변경하는 더 나은 방법에 대한 의견을 듣고 싶습니다. 화면의 상태에서 같은 예를 들어, 이전 화면의 상태 (에 의존하는 경우 감사합니다, AJ스윙에서 별도의 화면을 만드는 방법은 무엇입니까?
답변
에 설명 된 단계를 따를 수 있습니다. 원래 질문에 대한 두 번째 의견을 바탕으로, 패널을 사용하는 것이 가장 좋습니다. 활동 각각에 대해 여러 패널을 사용에서
봐 당신이 원하는 :
JPanel firstPanel = new JPanel();
JPanel secondPanel = new JPanel();
JPanel thirdPanel = new JPanel();
가 초기화 할 때 모든 패널이 숨겨져 있는지 확인하고 간단하게 사용하여 버튼 클릭 이벤트에 따라 다른 하나의 패널을 교체 :
firstPanel.hide();
secondPanel.show();
사용하는 레이아웃에 따라 다른 기술도 있습니다. 당신의 BorderLayout을 사용하는 경우, 예를 들어, 오히려 제거 및 추가 (또는 보여주는 여러 패널을 숨기고)보다, 당신은 간단한 다른 패널 BorderLayout를 영역을 "대체"다음 재 검증 수 :
container.add(BorderLayout.CENTER, thirdPanel);
container.validate();
참고 또한 다른 운영 체제 (Windows, Mac 등)은 다른 스타일을 고수하고 싶습니다. 예를 들어 일반적인 Windows 설치 프로그램에 대해 언급했습니다. 사람들은 설치 프로그램이 특정 방식으로보고 작동하도록 기대했지만 다른 운영 체제에서는 완전히 다른 기대치와 모양이 있습니다.
추가 읽기 :
편집 : 나는 최고의 같은 별도의 메뉴를 수행하는 방법 궁금
. 각 화면을 설정하는 별도의 메소드를 만든 다음 "뒤로"버튼과 같은 버튼을 클릭 할 때 적절한 메소드를 호출하는 것이 가장 좋을까요?
이것은 개인적인 취향에 달려 있습니다. 시동시 모든 것을 초기화하고 패널간에 신속하게 교환하고 싶습니까 (또는 "스크린"이라고 부름), 또는 더 빠른 초기 시동을 원하며 필요할 때마다 각 구성 요소의 "게으른로드"를 필수적으로 갖고 있습니까? .
개인적으로 저는 초기화 과정에서 모든 것을 선택합니다 (응용 프로그램을 시작하는 동안 많은 작업을 수행하거나로드하지 않는 한). 이것은 정말로 개인적 선호에 달려 있습니다.
또 다른 편집 : 아마도 다른 레이아웃 스타일이 같은 뭔가를 당신을 도울 것입니다, 레이아웃에 대해 말하기 :이 다소 도와 준다
희망.
아마도 내가 본 가장 심오한 대답 일 것입니다. 고맙습니다! –
Actions framework 한 번 봐, 그것은 다시 사용
에 대한 일반적인 수준의 작업을 개발하는 좋은 방법 위자드)는 this article
- 1. 스윙에서 동적 창을 만드는 방법은 무엇입니까?
- 2. 스윙에서 이미지 뷰어를 만드는 방법은 무엇입니까?
- 3. 스윙에서 알림을 만드는 방법
- 4. Javascript에서 피벗 화면을 만드는 방법은 무엇입니까?
- 5. 앱이 화면을 인식하도록 만드는 방법은 무엇입니까?
- 6. Android에서 채팅 화면을 만드는 방법은 무엇입니까?
- 7. 스크래핑 화면을 만들기위한 북마크릿을 만드는 방법은 무엇입니까?
- 8. 기본 화면에서 새 화면을 만드는 방법은 무엇입니까?
- 9. Java로 여러 화면을 만드는 방법은 무엇입니까?
- 10. 최적화 된 방식으로 화면을 만드는 방법은 무엇입니까?
- 11. 안드로이드에서 원형 전화 화면을 만드는 방법은 무엇입니까?
- 12. Excel 시작시 시작 화면을 만드는 방법은 무엇입니까?
- 13. 이 유형의 배경 화면을 만드는 방법은 무엇입니까?
- 14. 게임에서 인터럽트 화면을 만드는 방법은 무엇입니까?
- 15. j2me에서 LWUIT 목록 화면을 만드는 방법은 무엇입니까?
- 16. 별도의 데이터베이스에 ModelForm을 만드는 방법은 무엇입니까?
- 17. 별도의 라벨이있는 GEF 그림을 만드는 방법은 무엇입니까?
- 18. 자바 스윙에서 버튼을 강조 표시하거나 창백하게 만드는 방법은 무엇입니까?
- 19. 자바 스윙에서 다운로드 버튼/링크를 만드는 방법은 무엇입니까?
- 20. 자바 스윙에서 크기를 조정할 수있는 사각형을 만드는 방법은 무엇입니까?
- 21. 스윙에서 비디오 오버레이를 만드는 방법
- 22. 아이폰 설정 화면을 만드는 가장 좋은 방법은
- 23. 자바 스윙에서 jLabel을 새로 고치는 방법은 무엇입니까?
- 24. 스윙에서 JDialog 크기를 동적으로 늘리는 방법은 무엇입니까?
- 25. 스윙에서 영수증 패널을 디자인하는 방법은 무엇입니까?
- 26. 스윙에서 커서의 맞춤 크기를 설정하는 방법은 무엇입니까?
- 27. 메뉴가있는 JButton을 만드는 방법은 무엇입니까?
- 28. 상태 표시 줄을 포함하여 전체 화면을 덮는보기를 만드는 방법은 무엇입니까?
- 29. 오버레이 div를 생성하여 전체 화면을 흐리게 만드는 방법은 무엇입니까?
- 30. MapView로 2 개의 분할 화면을 만드는 방법은 무엇입니까?
모니터 (또는 : GraphicsEnvironment, GraphicsDevice) 에서처럼 "화면"을 의미하지는 않는다는 느낌을받습니다. 화면에서 정확히 무엇을 의미하는지에 대한 약간의 설명이있을 것입니다. –
나는 그것이 다소 혼란 스러울 수도 있다고 생각했지만, 그것을 가장 잘 표현하는 방법을 확신하지 못했습니다. 설치 마법사에서 "다음"또는 "뒤로"버튼을 클릭하면 창 내부의 모든 내용이 변경됩니다. 각각의 분리 된 것들은 제가 스크린을 고려하고있는 것입니다. "다음"을 클릭하면 다음 "화면"으로 이동합니다. 나는 그것을 설명 할 다른 방법을 정말로 모른다. –
설명해 주셔서 감사합니다. 원하는 답변을 추가했습니다. –