如何从剪贴板中获取文本并将该文本设置为java中的jtextfield? 想要在程序运行时始终更新jtextfield。
答案 0 :(得分:0)
如http://www.avajava.com/tutorials/lessons/how-do-i-get-a-string-from-the-clipboard.html中所述,您只需要使用java Toolkit并使用jTextField中的setText分配文本
package test;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import javax.swing.*;
public class GetStringFromClipboard {
public static void main(String[] args) throws Exception {
Toolkit toolkit = Toolkit.getDefaultToolkit();
Clipboard clipboard = toolkit.getSystemClipboard();
String result = (String) clipboard.getData(DataFlavor.stringFlavor);
JTextField tf= new JTextField(20);
tf.setText(result);
}
}
答案 1 :(得分:0)
Toolkit.getDefaultToolkit().getSystemClipboard().addFlavorListener(new FlavorListener() {
public void flavorsChanged(FlavorEvent e) {
String data = null;
try {
data = (String) Toolkit.getDefaultToolkit()
.getSystemClipboard().getData(DataFlavor.stringFlavor);
} catch (UnsupportedFlavorException ex) {
} catch (IOException ex) {
}
jTextField1.setText(data);
}
});