gpt4 book ai didi

java - 如何使用 Netbeans 将 jpanel 置于 jpanel 的中心?

转载 作者:行者123 更新时间:2023-11-30 05:12:37 26 4
gpt4 key购买 nike

使用 Netbeans,我成功地将一个具有固定大小的 jpanel 放在另一个 jpanel 中。现在我无法重复它 - 只能复制它。

我做得怎么样? (或者我应该将 x 和 y 放在另一个 jpanel 中具有固定大小的 jpanel 中心)。

结果与代码不同:

工作 - 搜索 .addContainerGap( 并查看下一个不工作:

        javax.swing.GroupLayout center3Layout = new javax.swing.GroupLayout(center3);
center3.setLayout(center3Layout);
center3Layout.setHorizontalGroup(
center3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 1064, Short.MAX_VALUE)
.addGroup(center3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(center3Layout.createSequentialGroup()
.addContainerGap(30, Short.MAX_VALUE)
.addComponent(mainPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(30, Short.MAX_VALUE)))
);
center3Layout.setVerticalGroup(
center3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 650, Short.MAX_VALUE)
.addGroup(center3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(center3Layout.createSequentialGroup()
.addContainerGap(23, Short.MAX_VALUE)
.addComponent(mainPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(23, Short.MAX_VALUE)))
);
<小时/>

不工作 - 搜索 .addGap 与上面的工作相比。

    javax.swing.GroupLayout center2Layout = new javax.swing.GroupLayout(center2);
center2.setLayout(center2Layout);
center2Layout.setHorizontalGroup(
center2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 1073, Short.MAX_VALUE)
.addGroup(center2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(center2Layout.createSequentialGroup()
.addGap(0, 34, Short.MAX_VALUE)
.addComponent(mainPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 35, Short.MAX_VALUE)))
);
center2Layout.setVerticalGroup(
center2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 654, Short.MAX_VALUE)
.addGroup(center2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(center2Layout.createSequentialGroup()
.addGap(0, 25, Short.MAX_VALUE)
.addComponent(mainPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 25, Short.MAX_VALUE)))
);

我并排查看了属性等 - 请帮忙! :)

最佳答案

我无法在 Netbeans 中重现将 JPanel 置于另一个 JPanel 中心的方法(使用 GroupLayout,所以)。如果有人能找到它,我也很高兴知道。

但是,我可以建议您将外部面板的布局更改为 GridBagLayout (您也可以在 Netbeans 中使用上下文菜单中的“setLayout”执行此操作)。
默认GridBagConstraints应该正是您所需要的,内面板将以其首选尺寸居中。因此,您实际上不需要自己亲自指定它们。

关于java - 如何使用 Netbeans 将 jpanel 置于 jpanel 的中心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2872465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com