Как скопировать текст из приложения Java в WordPad

StackOverflow https://stackoverflow.com/questions/1817851

  •  10-07-2019
  •  | 
  •  

Вопрос

Как щелкнуть JButton в приложении Swing, чтобы можно было скопировать некоторый текст в TextField (вместо выделения текста и нажатия клавиш Ctrl + C), затем в Wordpad я могу нажать на кнопку вставки в нем, чтобы вставить скопированный текст из приложения Java?

Это было полезно?

Решение

попробуйте это

copyBtn = new JButton(new AbstractAction("copy"){
    public void actionPerformed(ActionEvent e){
        Clipboard system = Toolkit.getDefaultToolkit().getSystemClipboard();
        StringSelection sel = new StringSelection(myTextField.getText());
        system.setContents(sel, sel);
    }    
});

Другие советы

Вы должны поместить текст в буфер обмена. В этой статье говорится об этом, так что это может быть то, что вы ищете .

Обычно это делается добавлением пунктов меню в ваше приложение.

Ознакомьтесь с разделом из учебника по Swing в текстовом компоненте. Особенности для рабочего примера, который показывает один из способов сделать это.

Другой способ - использовать DefaultEditorKit.CopyAction. Вы создаете действие, а затем можете добавить его в пункт меню, JButton или любой компонент, который принимает действие.

Action copy =  new DefaultEditorKit.CopyAction();
JButton button = new JButton( copy );

Конечно, пользователю все равно придется выбирать текст, который он хочет скопировать (но в вашем вопросе было сказано "некоторый текст").

Или у вас есть вопрос о том, как автоматически выбрать весь текст?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top