java操作剪贴板代码示例
发布时间:2020-05-24 15:26:08 所属栏目:Java 来源:互联网
导读:java操作剪贴板代码示例
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.TextArea;
import java.awt.Toolkit;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
public class ClipdoardUsage {
public static void main(String[] args) {
// Create a frame
Frame frame = new Frame("Example Frame");
/*
* Create a container with a flow layout,which arranges its children
* horizontally and center aligned.
* A container can also be created with a specific layout using
* Panel(LayoutManager) constructor,e.g.
* Panel(new FlowLayout(FlowLayout.RIGHT)) for right alignment
*/
Panel panel = new Panel();
// Add a text area in the center of the frame
final TextArea textArea = new TextArea("This is a sample text...");
frame.add(textArea,BorderLayout.CENTER);
// Add several buttons to the container
Button copyToClipboardButton = new Button("Copy to clipboard");
Button pasteFromClipboardButton = new Button("Paste from clipboard");
panel.add(copyToClipboardButton);
panel.add(pasteFromClipboardButton);
// Add action listener to copyToClipboardButton for copying textArea content to clipboard
copyToClipboardButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
setStringToClipboard(textArea.getText());
}
});
// Add action listener to pasteFromClipboardButton for pasting clipboard content to textArea
pasteFromClipboardButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
textArea.setText(getStringFromClipboard());
}
});
// Add the container to the bottom of the frame
frame.add(panel,BorderLayout.SOUTH);
// Display the frame
int frameWidth = 300;
int frameHeight = 300;
frame.setSize(frameWidth,frameHeight);
frame.setVisible(true);
}
// If a string is on the system clipboard,this method returns it; otherwise it returns null.
public static String getStringFromClipboard() {
Transferable transferable = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
try {
if (transferable != null && transferable.isDataFlavorSupported(DataFlavor.stringFlavor)) {
String text = (String) transferable.getTransferData(DataFlavor.stringFlavor);
return text;
}
} catch (UnsupportedFlavorException e) {
System.out.println("Clipboard content flavor is not supported " + e.getMessage());
} catch (IOException e) {
System.out.println("Clipboard content could not be retrieved " + e.getMessage());
}
return null;
}
// This method writes a string to the clipboard.
public static void setStringToClipboard(String stringContent) {
StringSelection stringSelection = new StringSelection(stringContent);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection,null);
}
}
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
