Как я перемещаю Java JFrame частично от моего рабочего стола Linux?

Я пишу JAVA-приложение с подвижными кадрами, и я столкнулся с причудой в Linux. Я выполняю GNOME 2.16.0 под CentOS.

Когда я использую JFrame.setBounds для установки границ на любое местоположение, это - половина от экрана, это на самом деле устанавливает местоположение кадра, чтобы быть максимально близким к границам, указанным при тихом пребывании полностью на экране.

Как я говорю Java говорить GNOME на самом деле помещать кадр, где я указываю, даже если это - половина от экрана?

Вот некоторый пример кода, который демонстрирует проблему, предполагая, что-50, 50 является внеэкранным. Кадр может все еще быть перетащен от экрана строкой заголовка, но любых вызовов к setLocation или setBounds не работать.

Это хорошо работает в Windows.

JFrame frame = new JFrame();
frame.setPreferredSize(new Dimension(200, 200));
frame.pack();
frame.setVisible(true);
frame.setLocation(-50, 50);
6
задан Erick Robertson 24 March 2010 в 11:43
поделиться

1 ответ

Я не думаю, что это возможно в Java, но я буду рад, если мне докажут, что я ошибаюсь. Я рассматриваю это как функцию, призванную снизить риск потери окон. Подобное происходит в Mac OS X и Ubuntu. Вот примитивный пример для подражания. Может быть, кто-нибудь попробует сделать это на Windows.

3
ответ дан 17 December 2019 в 18:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: