java / swing: вставка в буфер обмена - PullRequest
1 голос
/ 22 апреля 2010

У меня есть настройка DropTargetListener, позволяющая перетаскивать + отбрасывать строки в некоторые таблицы моего приложения Swing - по капле я анализирую строку и вставляю данные в таблицу.

Я бы хотел сделать то же самое с помощью вставки в буфер обмена (Ctrl-V). Какая литература есть, чтобы объяснить, как обращаться со вставками из буфера обмена? Я смотрю на некоторые вещи с сайта Sun и это кажется странным, как будто это должно быть проще.

Ответы [ 3 ]

5 голосов
/ 11 августа 2012

Этот ответ от Божидар Бацов - лучшее решение, которое я видел, простое и расширяемое После добавления его файла класса, вот как я реализовал его класс

txtTextField.addMouseListener(new ContextMenuMouseListener());

Добавление дополнительных действий должно быть довольно простым:

  1. добавить новое Action поле класса,
  2. Добавить действие к enum Actions
  3. Добавить AbstractAction с нужными функциями
  4. Добавить новое действие во всплывающее окно
  5. Добавьте необходимую логику к методу mouseClicked(MouseEvent e)

И вот, пожалуйста. Я добавил здесь детали частично, чтобы убедиться, что я их понимаю, а также, чтобы те, кто за мной, четко понимали, что нужно сделать. Не забудьте указать необходимые imports!

3 голосов
/ 22 апреля 2010

Как показано в intro и ListCutPaste demo , оба соединены. DnD автоматически получит вам CCP.

2 голосов
/ 22 апреля 2010

Вместо этого я бы предложил вам взглянуть на java.awt.datatransfer.Clipboard документацию по классам. Я думаю, что это пойдет вместе с вашими операциями DnD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...