Я с трудом пытаюсь создать программу на Java, имеющую только форму (например, прямоугольник) в качестве основного окна. Я не хочу, чтобы фигура находилась внутри «окна ОС» (с кнопками, чтобы закрыть и свернуть и т.д ..)
Я не знаю, можете ли вы рисовать прямо на экране в Java (я склонен думать, что вы не можете). Но вы можете создать JDialog (который не отображается на панели задач) и вызвать setUndecorated(true) (чтобы избавиться от строки заголовка). Тогда вы можете делать с ней любую произвольную картину.
JDialog
setUndecorated(true)
Edit: kts указывает, что JWindow будет работать еще лучше для этой цели. Из Javadocs:
JWindow
У него нет строки заголовка, кнопок управления окном или других элементов, связанных с JFrame, но он по-прежнему является «первоклассным гражданином» рабочего стола пользователя и может существовать где угодно на нем. 1020 *
JFrame
И даже есть конструктор без аргументов , так что вам не нужно беспокоиться о передаче null владельца!
null
Для более экзотических форм: полупрозрачные и фасонные окна . Работает только в 6u10 и позже.