의 하단에 머물 버튼을 필요, 나는 ;-)내가 원래 miglayout 포럼에서 534 개보기없이 대답 한 후이 질문을 게시 내 대화
나는 "초기를 확장하는 시도가 그것을 시도하기로 결정 예 "를 MigLayout 백서에서 선택하여 대화 상자의 맨 아래에 항상있는"확인 "버튼을 추가하십시오.
불행하게도, 내가 찾은 유일한 해결책은 성장할 것 "가짜 패널"을 추가했다 :
public class TestResize extends JDialog {
protected JPanel contentPane;
public TestResize() {
super((Dialog) null, "Test resize", true);
setupUI();
setContentPane(contentPane);
}
private void setupUI() {
contentPane = new JPanel(new MigLayout());
contentPane.add(new JLabel("Enter size:"), "");
contentPane.add(new JTextField(""), "grow, pushx, wrap");
contentPane.add(new JLabel("Enter weight:"), "");
contentPane.add(new JTextField(""), "grow, pushx, wrap");
// fake panel that is allowed to grow
contentPane.add(new JPanel(), "span 2, grow, pushy, wrap");
JButton okButton = new JButton("Ok");
JPanel buttonPanel = new JPanel(new MigLayout("", "[center, grow]"));
buttonPanel.add(okButton, "");
contentPane.add(buttonPanel, "dock south");
}
public static void main(String[] args) {
TestResize dialog = new TestResize();
dialog.pack();
dialog.setVisible(true);
}
}
정말 모두이 방식을 좋아하지 않아 ...하지만 더 나은 방법이
?
(나는 사진을 업로드 할 수 없습니다 것 같은 같은데,하지만 난 얻을하려는 UI는 in my original post 볼 수 있습니다)
감사합니다!
new MigLayout(
"", // Layout Constraints
"[][]", // Column constraints
"[][][]:push[]"); // Row constraints
합니다 (cheatsheet의 "열/행 제한"절을 참조하십시오) : 행의 두 사람 사이에 "푸시"당신이 명시 적 그리드로 MigLayout를 구성하는 경우
* "성장할 것"가짜 패널 "불행하게도, 내가 찾은 유일한 해결책은 추가 할 수 있었다"*에 대한 불행한 무엇입니까 그? 추가 패널은 중첩 된 레이아웃에서 상당히 일반적입니다. 문제 없어. –
@AndrewThompson 고급 LayoutManager의 전반적인 개념은 중첩 패널이나 접착제 나 다른 더미 구성 요소와 같은 해킹을 사용하지 않는 것입니다 .-) MigLayout의 중첩 및 더미 구성 요소는 로랑 느낌과 마찬가지로 무언가를 잘못하는 매우 강력한 지표입니다. – kleopatra
@ kleopatra Ehh .. 작은 접착제와 오리 테이프에 문제 없습니다. ;) 그러나 더 진지하게, 나는 당신의 요점을 본다. 나는 더 큰 그림을보기 위해 J2SE 레이아웃을 핵심으로 삼기도한다. –