Как скопировать текст из приложения Java в WordPad
Вопрос
Как щелкнуть 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 );
Конечно, пользователю все равно придется выбирать текст, который он хочет скопировать (но в вашем вопросе было сказано "некоторый текст").
Или у вас есть вопрос о том, как автоматически выбрать весь текст?