奇怪的swing border工件

30byixjq  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(523)

下面是我的简化代码示例:

  1. public class TestPanel extends JPanel {
  2. private static void createAndShowGUI() {
  3. JFrame myFrame = new JFrame("");
  4. myFrame.setBounds(new Rectangle(100, 100, 240, 180));
  5. myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  6. JPanel box = new JPanel(null);
  7. box.setBackground(Color.BLUE);
  8. JPanel left = new JPanel();
  9. left.setOpaque(false);
  10. JPanel right = new JPanel();
  11. right.setOpaque(false);
  12. JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, left, right);
  13. splitPane.setResizeWeight(0.5);
  14. splitPane.setOpaque(false);
  15. box.setLayout(new BorderLayout());
  16. box.setBorder(new EmptyBorder(10, 10, 10, 10));
  17. box.add(splitPane);
  18. myFrame.getContentPane().add(box, BorderLayout.CENTER);
  19. myFrame.setVisible(true);
  20. }
  21. public static void main(String[] args) {
  22. SwingUtilities.invokeLater(TestPanel::createAndShowGUI);
  23. }
  24. }

结果如下:

如果仔细观察左下角,可能会发现奇怪的边界扭曲:

有人知道怎么了吗?在macos上测试,jdk1.8.0\U 251

relj7zay

relj7zay1#


看来这是你当地的问题。我看不到这个神器。

相关问题