2009-05-01 1 views
1

Мне тяжело пытаться создать в качестве основного окна программу на Java с только формой (например, прямоугольником). Я не хочу, чтобы форма находилась внутри «OS-window» (с кнопками для закрытия и минимизации и т. Д.)Как показать фигуру или графику в java без рамки окна?

+0

http://stackoverflow.com/questions/722827/how-can-i-create-a-java-swing-app-that-covers-the-windows-title-bar – erickson

+0

@erickson: Это было около полноэкранный режим. Я не думаю, что это дубликат. –

+0

Это другое приложение, но решение такое же. – erickson

ответ

3

Не знаю, можно ли рисовать непосредственно на экране в Java (я склонен думаю, вы не можете). Но вы можете создать JDialog (который не отображается на панели задач) и вызвать на нем setUndecorated(true) (чтобы избавиться от строки заголовка). Затем вы можете делать с ним любую обычную картину.

Редактировать:kts указывает, что JWindow будет работать даже лучше для этой цели. Из Javadocs:

Это не имеет строку заголовка, кнопки оконного управления или другие отделочные материалы, связанные с JFrame, но это все еще «первый класс гражданин» на рабочем столе пользователя, и может существовать где угодно.

И есть даже no-argument constructor, так что вам не придется беспокоиться о передаче в null владельца!

+0

Вот что я искал, спасибо :) – Johannes

+1

вы могли бы просто создать JWindow. У него нет этого досадного конструктора JFrame/JDialog. Он также не отображается в панели задач. У меня тоже нет украшений. JDialog должен работать, но я всегда говорю о передаче null в качестве аргумента. – KitsuneYMG

+0

Хороший совет на JWindow. Я даже не осознавал, что этот класс существует, но он идеально подходит для этой работы. –