MigLayout 中的单元格

发布于 2025-01-04 08:19:14 字数 1141 浏览 0 评论 0原文


我正在使用 MigLayout 并使用 此 (QuickStart.pdf)这个(备忘单)

为什么细胞不起作用?我想这应该是 3 行 2 列。每行上有 JLabel 和 JTextField。
我应该更改什么才能使其按我的预期工作?

我的代码:

private Container serverInfo() {
JPanel oServeruJP = new JPanel();

this.setLayout(new MigLayout());
JLabel serverLB = new JLabel("Server: ");
JTextField serverTF = new JTextField("none");
JLabel portLB = new JLabel("Port: ");
JTextField portTF = new JTextField("none");
JLabel stavServeruLB = new JLabel("Stav serveru: ");
JTextField stavServeruTF = new JTextField("Odpojen");

oServeruJP.setBorder(BorderFactory.createTitledBorder("Informace o serveru:"));

oServeruJP.add(serverLB, "cell 0 0");
oServeruJP.add(serverTF, "cell 1 0");
oServeruJP.add(portLB, "cell 0 1");
oServeruJP.add(portTF, "cell 1 1");
oServeruJP.add(stavServeruLB, "cell 0 2");
oServeruJP.add(stavServeruTF, "cell 1 2");
return oServeruJP;
}

I'm working with MigLayout and using this (QuickStart.pdf) and this(Cheat sheet).

Why the cells doesn't work? I'm suppose this should make 3 rows and 2 colums. JLabel and JTextField on each row.
What should I change to make it work as I've expected?

My code:

private Container serverInfo() {
JPanel oServeruJP = new JPanel();

this.setLayout(new MigLayout());
JLabel serverLB = new JLabel("Server: ");
JTextField serverTF = new JTextField("none");
JLabel portLB = new JLabel("Port: ");
JTextField portTF = new JTextField("none");
JLabel stavServeruLB = new JLabel("Stav serveru: ");
JTextField stavServeruTF = new JTextField("Odpojen");

oServeruJP.setBorder(BorderFactory.createTitledBorder("Informace o serveru:"));

oServeruJP.add(serverLB, "cell 0 0");
oServeruJP.add(serverTF, "cell 1 0");
oServeruJP.add(portLB, "cell 0 1");
oServeruJP.add(portTF, "cell 1 1");
oServeruJP.add(stavServeruLB, "cell 0 2");
oServeruJP.add(stavServeruTF, "cell 1 2");
return oServeruJP;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

青萝楚歌 2025-01-11 08:19:14

您将外部容器 (this) 的布局设置为 MigLayout,而不是将组件添加到的面板 (oServeruJP )。

尝试改为:

oServeruJP.setLayout(new MigLayout());

You're setting the layout for your outer container (this) to MigLayout, rather than the panel you're adding your components to (oServeruJP).

Try instead:

oServeruJP.setLayout(new MigLayout());
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文