1 回答
TA贡献1807条经验 获得超9个赞
您是否考虑过在放置组件时使用行/列约束和“单元格”参数?我用这种方法取得了很多成功。
JPanel helper = new JPanel(
new MigLayout(
"",
"5[grow,fill]10[grow,fill,20:100]10[grow,fill,20:100]5",
"5[fill,grow]5"));
helper.add( new JLabel( "Threshold:" ), "cell 0 0" );
threshold = new JTextField(); // Assuming this was declared earlier
Icon thresholdIcon = UIManager.getIcon( "OptionPane.questionIcon" );
JLabel thresholdIconLabel = new JLabel( thresholdIcon );
thresholdIconLabel.setToolTipText( "Threshold for template matching" );
helper.add( threshold, "cell 1 0" );
helper.add( thresholdIconLabel, "cell 2 0" );
请务必阅读MigLayout 白皮书和MigLayout 快速入门指南,因为它们在解释您可以使用的所有内容方面做得非常好。
旁注:
它没有出现在一行中的原因是因为您告诉 MigLayout 可以让wrap组件适应您提供的空间,包括制作新行以适应。您也可以尝试增加窗口的大小。
大小100:20转换为 100 像素的最小大小,但首选大小为 20 像素,我不知道 MigLayout 将如何处理。我在我的代码中更改了它。
添加回答
举报