首页 / JAVA / java-需要按钮留在对话框的底部
java-需要按钮留在对话框的底部
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-需要按钮留在对话框的底部,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1591字,纯文字阅读大概需要3分钟。
内容图文
![java-需要按钮留在对话框的底部](/upload/InfoBanner/zyjiaocheng/674/30e6bcc08cf84ac495869ae1c3aed0af.jpg)
我最初将此问题发布在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)
谢谢!
解决方法:
如果使用显式网格构造MigLayout,则可以在两行之间使用“:push”:
new MigLayout(
"", // Layout Constraints
"[][]", // Column constraints
"[][][]:push[]"); // Row constraints
(请参见cheatsheet的“列/行约束”部分)
编辑:
实际上,更好的解决方案是在上一行的末尾使用“ wrap push”.然后,您无需显式设置网格中的行数:
contentPane.add(new JPanel(), "span 2, grow, pushy, wrap push");
内容总结
以上是互联网集市为您收集整理的java-需要按钮留在对话框的底部全部内容,希望文章能够帮你解决java-需要按钮留在对话框的底部所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。