по щелчку добавить динамический текстовый объект, похожий на область в Java - PullRequest
2 голосов
/ 09 мая 2011

Название немного сбивает с толку, но я буду использовать Java и Jframe.По сути, я хочу иметь возможность щелкать в любом месте формы и отображать «текстовую область / поле» (возможно, используйте JTextField или JTextArea?).Я хочу, чтобы пользователь также мог редактировать, удалять и перемещать эту строку.

Мне кажется, мне нужен Actionlistener для прослушивания кликов в форме.Каждый щелчок будет вызывать создание нового текстового «окна».Я не уверен, как сделать эту «коробку» редактируемой, удаляемой или перемещаемой пользователем.

Мне также нужен способ хранения строк и координатных данных.Было бы хорошей идеей просто расширить JTextField или JTextArea, чтобы добавить к ним информацию о координатах?Я вижу, что качели основаны на событиях, поэтому мне нужен какой-то триггер для «сохранения» текста (думал, что это клавиша ввода, но я понимаю, что хочу, чтобы пользователь мог вводить многострочные строки).

Любые мысли будут оценены.Я знаком с Java, но немного разбираюсь в части пользовательского интерфейса.

1 Ответ

2 голосов
/ 09 мая 2011

Вместо ActionListener вам понадобится MouseListener для отслеживания кликов.

Звучит так, как будто вам нужен неокрашенный JInternalFrame с текстовым полем на JDesktopPane.Тем не менее, я не думаю, что вы можете создать неокрашенный JInternalFrame, возможно, начните с обычного JInternalFrame с TextBox в нем и создавайте новые кадры по щелчкам мыши на панели рабочего стола.Затем посмотрите, можете ли вы сделать JInternalFrame более похожим на Window.

Другой маршрут - это пользовательский компонент, который делает все, что вам нужно.Это возможно, просто намного больше пользовательского кода.

...