2018-05-31 13:56:26 1509瀏覽
今天小編給大家分享的是扣丁學(xué)堂Java在線學(xué)習(xí)之SWT(JFace)體驗(yàn)之復(fù)制粘貼,別的不多說(shuō)了,下面和扣丁學(xué)堂小編一起來(lái)看一下SWT(JFace)體驗(yàn)之復(fù)制粘貼吧。
演示代碼如下:
package swt_jface.demo11; import org.eclipse.swt.SWT; import org.eclipse.swt.dnd.Clipboard; import org.eclipse.swt.dnd.RTFTransfer; import org.eclipse.swt.dnd.TextTransfer; import org.eclipse.swt.dnd.Transfer; import org.eclipse.swt.dnd.TransferData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.ToolBar; import org.eclipse.swt.widgets.ToolItem; public class CopyPaste { Display display = new Display(); Shell shell = new Shell(display); public CopyPaste() { shell.setLayout(new GridLayout()); ToolBar toolBar = new ToolBar(shell, SWT.FLAT); ToolItem itemCopy = new ToolItem(toolBar, SWT.PUSH); ToolItem itemPaste = new ToolItem(toolBar, SWT.PUSH); itemCopy.setText("Copy"); itemPaste.setText("Paste"); itemCopy.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { Clipboard clipboard = new Clipboard(display); String plainText = "Hello World"; String rtfText = "{\\rtf1\\b Hello World}"; TextTransfer textTransfer = TextTransfer.getInstance(); RTFTransfer rftTransfer = RTFTransfer.getInstance(); clipboard.setContents(new String[]{plainText, rtfText}, new Transfer[]{textTransfer, rftTransfer}); clipboard.dispose(); } }); itemPaste.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { Clipboard clipboard = new Clipboard(display); TransferData[] transferDatas = clipboard.getAvailableTypes(); for(int i=0; i<transferDatas.length; i++) { if(RTFTransfer.getInstance().isSupportedType(transferDatas[i])) { System.out.println("Data is available in RTF format"); break; } } String plainText = (String)clipboard.getContents(TextTransfer.getInstance()); String rtfText = (String)clipboard.getContents(RTFTransfer.getInstance()); System.out.println("PLAIN: " + plainText + "\n" + "RTF: " + rtfText); clipboard.dispose(); } }); shell.pack(); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } public static void main(String[] args) { new CopyPaste(); } }
以上就是扣丁學(xué)堂Java培訓(xùn)小編給大家分享的SWT(JFace)體驗(yàn)之復(fù)制粘貼,希望對(duì)小伙伴們有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢??鄱W(xué)堂是專業(yè)的Java培訓(xùn)機(jī)構(gòu),不僅有專業(yè)的老師和與時(shí)俱進(jìn)的課程體系,還有大量的Java在線教程供學(xué)員觀看學(xué)習(xí),心動(dòng)的小伙伴快快行動(dòng)吧??鄱W(xué)堂Java技術(shù)交流群:670348138。
【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“Java開發(fā)資訊”的相關(guān)文章>>