Отключить полное перетаскивание окна - PullRequest
0 голосов
/ 11 марта 2011

когда я использую AWTUtilities.setWindowOpaque(this, false);, чтобы сделать фон моего JFrames прозрачным, вы можете изменить местоположение моего JFrame, перетащив его в любое место в окне.Моя проблема в том, что у меня есть Объекты, которые я хочу использовать для перетаскивания в этом Кадре, но когда JFrame перемещается, когда я пытаюсь перетащить объект, невозможно бросить его где-либо еще.Есть ли способ решить эту проблему?

Кстати, я на Mac использую Mac OS 10.6.6

Спасибо за помощь!

Ответы [ 2 ]

6 голосов
/ 26 мая 2011

Извините за мой плохой английский. Попробуйте это:

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

По умолчанию функция setWindowOpaque устанавливает для этого свойства клиента значение true. Но это свойство клиента делает каждый компонент в вашем окне перетаскиваемым.

Теперь вам нужно самостоятельно создать код перетаскивания.

0 голосов
/ 11 марта 2011

Вы должны проверить это на Windows, так как я думаю, что это функция Mac.Вы можете, в общем, щелкнуть в любом месте фрейма, чтобы перетащить приложение.Какая у вас целевая платформа для развертывания?Может быть, вы можете вставить в него другую панель и установить ее непрозрачной.может это поможет?

...