내 project.Requirement에 JsplitPane
를 추가하려고했던 것은 내가 JSplitPane
의 오른쪽 패널 내부에 두 개의 Jpanel
을 추가 이 필요하다.
JSplitPane
를 사용하여, 우리는 두 개의 구성 요소가 왼쪽과 오른쪽 또는 상부 및 하부 말에 창을 분할 있음을 유의하십시오. 따라서 JSplitPane
의 한면에 두 개 이상의 구성 요소를 추가하려는 경우 오른쪽이라고 말하면 중첩 분할 창을 사용하는 것이 좋습니다. 즉, 분할 창 안에 분할 창을 만드는 것입니다. 내가 처음 Jpanel
추가됩니다했던 그래서
는 panel1
내부에 두 개의 패널을 추가하는 것보다 오른쪽 패널 에 panel1
말하고 BoxLayout.Y-AXIS
을 설정합니다.
이제 두 개의 패널 첫 번째 패널에
BoxLayout
하고 난
panel1
의 크기로이 패널의 폭 를 원하지만 내가 그것을 할 수 없습니다입니다. 당신이
중첩 분할 창]를 사용하는 경우
, 당신은 panel1
로 말을 추가 부모 JPanel
을 만들 필요가 없습니다 수 있습니다. 실제로 Split Pane은 창을 두 개의 세그먼트로 나눕니다. 따라서 중첩 분할 창을 사용하여 새로 만든 분할 창을 panel1
으로 생성하는 대신 다른 하위 패널을 중첩 된 새 JSplitPane
으로 만든 두 개의 창 안에 넣습니다. 따라서 크기 문제에 대해서 생각할 필요가 없습니다. 내가 당신을 분명하게 할 수 있었으면 좋겠다. 그리고 그것은 당신의 문제를 해결했다.
간단한 방법은 달성 것을 사용하여 :
선언 : 생성자
private JSplitPane jSplitPane1;
private JSplitPane jSplitPane2;
private JPanel jPanel1;
private JPanel jPanel2;
:
jSplitPane1 = new JSplitPane();
jSplitPane2 = new JSplitPane();
jSplitPane1.setOrientation(JSplitPane.HORIZONTAL_SPLIT);
jSplitPane1.setRightComponent(jSplitPane2);
jSplitPane2.setOrientation(JSplitPane.VERTICAL_SPLIT);
jSplitPane1.setTopComponent(jPanel1);
jSplitPane1.setBottomComponent(jPanel2);
상술 한 방법으로 간단 당신이 원하는 것을 얻을 수 있습니다. 그러나 분할 창을 중첩하지 않으면 다중 분할 창을 사용하는 것이 편리 할 수 있습니다.
https://community.oracle.com/docs/DOC-983539
은 또한 당신이 직접 시도 무엇으로 코드를 공유, 귀하의 요구 사항 초안을 작성하는 간단한 페인트 응용 프로그램을 사용 : 아직도 당신은 오라클이 된 글을 볼 수있다. – Arvind
[예] (http://stackoverflow.com/a/10110232/230513). – trashgod