gpt4 book ai didi

java - 使 JFrame 透明中断 Mac 上的滚动

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:33:31 24 4
gpt4 key购买 nike

我有一个透明的未修饰的 JFrame,我使用 AWTUtilities.setWindowOpaque(this, false) 设置了它。在 JFrame 上,我有一个滚动 Pane ;它在 Windows 上完美运行。在 Mac 上,整个 JFrame 都是可拖动的;因此,当我尝试通过单击并按住滚动条上的鼠标来滚动滚动 Pane 时,整个框架都会移动,而不是滚动条拇指。我也尝试使用 setBackground(new Color(0,0,0,0)) 而不是 setWindowOpaque(),但它有同样的问题。关于如何解决此问题的任何想法?

最佳答案

this similar thread 中的建议, 尝试:

getRootPane().putClientProperty("apple.awt.draggableWindowBackground", Boolean.FALSE);

如果您选择使用它,滚动条将可用并且窗口不会拖动。但是,您可能会遇到无法移动的窗口,除非您添加 MouseMotionListener 并使用 frame 之类的调用在 mouseDragged() 方法中四处移动窗口。 setLocation().

相反,您可以强制用户单击滚动条的箭头按钮,而不是拖动滚动条本身...但这不是我见过的最用户友好的想法。

关于java - 使 JFrame 透明中断 Mac 上的滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10012753/

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