java - 禁用全窗口拖动

标签 java macos transparency drag

当我使用 AWTUtilities.setWindowOpaque(this, false); 使 JFrame 的背景透明时,您可以通过将 JFrame 拖动到窗口中的任意位置来更改它的位置。我的问题是,我有一些想要用于在此框架上拖放的对象,但是当我尝试拖动对象时 JFrame 移动时,不可能将其放在其他任何地方。 有什么办法可以解决这个问题吗?

顺便说一下,我使用的是 Mac OS 10.6.6

感谢您的帮助!

最佳答案

抱歉我的英语不好。 试试这个:

setUndecorated(true); 
AWTUtilities.setWindowOpaque(this, false); 
getRootPane().putClientProperty("apple.awt.draggableWindowBackground", Boolean.FALSE); 

默认情况下,setWindowOpaque 函数将此客户端属性设置为 true。但是这个客户端属性使窗口中的每个组件都可以拖动。

现在你必须自己编写拖动代码。

关于java - 禁用全窗口拖动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5272358/

相关文章:

Javafx 图像无法正确渲染

java - 如何用LinkedHashMap制作一个ArrayList来解决 "issue"?

macos - 将按键发送到 Mac 上的特定窗口

css - 是否可以使图像在渐变中透明?

macos - 使用绑定(bind)和结构时自定义 nspopupbutton 标题

macos - 有适用于 Mac OS X 的图形化二进制差异工具吗?

c++ - 如何用GDI+绘制透明BMP

java - 选择特定项目并提供保存的数据

java - 访问从 ActionPerformed 单击的 JButton?

java - 如何返回数组的元素编号?