我正在尝试使用 OverlayLayout 将一小部分文本与 JTabbedPane 的顶部选项卡对齐,但它似乎不起作用。
作为一个注释,我使用的是 JLayeredPane,但是我需要 TabbedPane 来填充父组件,而且如果没有一些麻烦,它似乎无法工作。
无论如何,似乎当您不理会对齐方式时,行为会按预期工作(按钮漂浮在背景上)。但是,当使用任何对齐方式时(据我了解,这是您使用此布局管理器设置位置的方式),它会将背景缩小到按钮应位于的边缘。
这是一些示例代码。
import java.awt.Color;
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.OverlayLayout;
public class Test {
public static void main(String[] args) {
JFrame frame = new JFrame();
Container c = frame.getContentPane();
c.setLayout(new OverlayLayout(c));
JButton button = new JButton("Test");
JPanel background = new JPanel();
background.setBackground(Color.BLUE);
background.setSize(500, 500);
// toggle the following between 0 and 100 to see the described behavior
background.setAlignmentX(100);
frame.add(background);
frame.add(button);
frame.pack();
frame.setSize(800, 800);
frame.setVisible(true);
}
}
任何建议,将不胜感激。