网站建设企业,小黄猫传媒有限公司官方首页,校园二手网站开发,磁力搜索器在google上搜了一把#xff0c;结果搜到了自己原创的文章#xff0c;不胜窃喜。于是重新格式化了一下#xff0c;重发之。 package com.ibm.bloghelper; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.F…在google上搜了一把结果搜到了自己原创的文章不胜窃喜。于是重新格式化了一下重发之。 package com.ibm.bloghelper; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.FlavorEvent; import java.awt.datatransfer.FlavorListener; import java.awt.datatransfer.Transferable; import java.awt.datatransfer.UnsupportedFlavorException; import java.io.IOException; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; public class ClipboardMonitor implements FlavorListener { public Display display ; public Shell shell ; public Clipboard systemClipboard null ; public Text text null ; public StringBuffer buffer ; public void flavorsChanged(FlavorEvent e){ try { Clipboard clipboard (Clipboard)e.getSource() ; Transferable content clipboard.getContents(this); if (content null) { System.out.println(Content is empty!); return; } if (!content.isDataFlavorSupported(DataFlavor.stringFlavor)) { System.out.println(StringFlavor not supported!); return; } try { final String data (String)content.getTransferData(DataFlavor.stringFlavor); // System.out.println(Content: / data /); display.asyncExec(new Runnable(){ public void run() { text.append(data) ; } }) ; } catch (UnsupportedFlavorException ex_) { ex_.printStackTrace(); } catch (IOException ex_) { ex_.printStackTrace(); } } catch (IllegalStateException ex) { ex.printStackTrace(); } } public void init() { buffer new StringBuffer() ; systemClipboard java.awt.Toolkit.getDefaultToolkit().getSystemClipboard(); display new Display() ; shell new Shell(display , SWT.ON_TOP | SWT.TITLE | SWT.MAX | SWT.CLOSE | SWT.MIN) ; shell.setText(ClipBoard Monitor) ; text new Text(shell, SWT.MULTI | SWT.BORDER | SWT.WRAP | SWT.V_SCROLL); text.setSize(500 , 300) ; GridData data new GridData(GridData.FILL_BOTH); text.setLayoutData(data); shell.setSize(800, 600) ; shell.pack() ; systemClipboard.addFlavorListener(this) ; // display.asyncExec(this) ; // Display.getDefault().syncExec(this) ; shell.open() ; shell.forceFocus() ; while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } } /** * param args */ public static void main(String[] args) { // TODO Auto-generated method stub ClipboardMonitor instance new ClipboardMonitor() ; instance.init() ; } }