手机
当前位置:查字典教程网 >编程开发 >Java >SWT(JFace)体验之复制粘贴
SWT(JFace)体验之复制粘贴
摘要:演示代码如下:复制代码代码如下:packageswt_jface.demo11;importorg.eclipse.swt.SWT;impo...

演示代码如下:

复制代码 代码如下:

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 = "{rtf1b 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();

}

}

【SWT(JFace)体验之复制粘贴】相关文章:

使用游长编码对字符串压缩 Run Length编码示例

Java中的位运算符、移位运算详细介绍

java list与数组之间的转换详细解析

关于java编译过程中的bug说明

SWT(JFace)体验之圆环状(戒指型)

Java 快速排序(QuickSort)原理及实现代码

基于Java回顾之多线程详解

map实现按value升序排序

Java硬币翻转倍数递增试算实例

java N皇后实现问题解析

精品推荐
分类导航