java 复制剪贴板_java_swing复制粘贴、剪贴板
import java.awt.*;
import java.awt.event.*;
import java.awt.datatransfer.*;
import javax.swing.*;
//剪貼板演示
public class ClipboardDemo extends JFrame implements ClipboardOwner{
Clipboard clipboard;? //剪貼板
JTextArea jtaCopyTo=new JTextArea(5,10);?//用于拷貝的文本框
JTextArea jtaPaste=new JTextArea(5,10);?//用于粘貼的文本框
public ClipboardDemo(){
super("使用剪貼板的復制/粘貼程序");?//調用父類構造函數
clipboard=Toolkit.getDefaultToolkit().getSystemClipboard();?//獲得系統剪貼板
JButton btCopy=new JButton("拷貝");?//拷貝按鈕
JButton btPaste=new JButton("粘貼");?//粘貼按鈕
jtaCopyTo.setLineWrap(true);?//設置換行
jtaPaste.setLineWrap(true);
jtaCopyTo.setBorder(BorderFactory.createTitledBorder("復制到系統剪切板"));?//設置邊界
jtaPaste.setBorder(BorderFactory.createTitledBorder("從系統剪切板粘貼"));
Container container=getContentPane();?//得到容器
JToolBar toolBar=new JToolBar();?//實例化工具欄
toolBar.add(btCopy);?//增加工具欄按鈕
toolBar.add(btPaste);
btCopy.addActionListener(new CopyListener());?//按鈕事件處理
btPaste.addActionListener(new PasteListener());
Box box=new Box(BoxLayout.X_AXIS);?//實例化Box
box.add(jtaCopyTo);?//增加文本框到Box上
box.add(jtaPaste);
container.add(toolBar,BorderLayout.NORTH);?//增加工具欄到容器
container.add(box,BorderLayout.CENTER);?//增加Box到容器
setSize(320,180);?//設置窗口尺寸
setVisible(true);?//設置窗口為可視
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?//關閉窗口時退出程序
}
class CopyListener implements ActionListener {?//拷貝數據處理
public void actionPerformed(ActionEvent event) {
StringSelection contents=new StringSelection(jtaCopyTo.getText());?//用拷貝文本框文本實例化StringSelection對象
clipboard.setContents(contents, ClipboardDemo.this);?//設置系統剪貼板內容
}
}
class PasteListener implements ActionListener {?//粘貼數據處理
public void actionPerformed(ActionEvent event) {
Transferable contents=clipboard.getContents(this);?//得到剪貼板內容
if(contents!=null && contents.isDataFlavorSupported(DataFlavor.stringFlavor)) {?//判斷內容是否為空,是否為字符串
try{
String string= (String) contents.getTransferData(DataFlavor.stringFlavor);?//轉換內容到字符串
jtaPaste.append(string);?//插入字符串到粘貼文本框
}catch (Exception ex){
ex.printStackTrace();?//錯誤處理
}
}
}
}
public void lostOwnership(Clipboard clip,Transferable transferable) {?//實現ClipboardOwner接口中的方法
}
public static void main(String[] args){
new ClipboardDemo();
}
}
總結
以上是生活随笔為你收集整理的java 复制剪贴板_java_swing复制粘贴、剪贴板的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql pdo 预处理_哪些方法用于
- 下一篇: java properties 路径问题