SWT 如何实现Tableviewer表的内容可以被复制
2012-03-17 11:15
435 查看
做了一个有关SWT界面程序,在实现Tableviewer表内容如何可以被复制到剪切板时遇到了困难,所以在论坛求助
帖子地址:http://topic.csdn.net/u/20120315/16/5e611c9c-fe1b-4604-8e1c-d594fb989a4b.html
我再稍微总结一下:
//首先通过Tableviewer对象得到table
final Table table = tableViewer.getTable();
//实现事件监听
table.addKeyListener(new KeyListener() {
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
//按下ctrl+c时:do something
if (e.keyCode == 99 && (e.stateMask&SWT.CTRL) != 0) {
for (TableItem tableItem:table.getItems()) {
//得到选中行内容
TableItem item = table.getItem(table.getSelectionIndex());
Object bean =
item.getData();
//把Object内容转化为String输出,赋值给data,一切OK
/*
TableItem类中还有两个方法:
getItems()是得到Table表所有内容
getSelection()是得到你选择的多行
具体可以看Api文档
*/
Object[] data = {Object内容转化为String输出};
clipboard = new Clipboard(Display.getCurrent());
Transfer[] transfers = new Transfer[]{TextTransfer.getInstance()};
clipboard.setContents(data, transfers);
}
}
}
});
帖子地址:http://topic.csdn.net/u/20120315/16/5e611c9c-fe1b-4604-8e1c-d594fb989a4b.html
我再稍微总结一下:
//首先通过Tableviewer对象得到table
final Table table = tableViewer.getTable();
//实现事件监听
table.addKeyListener(new KeyListener() {
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
//按下ctrl+c时:do something
if (e.keyCode == 99 && (e.stateMask&SWT.CTRL) != 0) {
for (TableItem tableItem:table.getItems()) {
//得到选中行内容
TableItem item = table.getItem(table.getSelectionIndex());
Object bean =
item.getData();
//把Object内容转化为String输出,赋值给data,一切OK
/*
TableItem类中还有两个方法:
getItems()是得到Table表所有内容
getSelection()是得到你选择的多行
具体可以看Api文档
*/
Object[] data = {Object内容转化为String输出};
clipboard = new Clipboard(Display.getCurrent());
Transfer[] transfers = new Transfer[]{TextTransfer.getInstance()};
clipboard.setContents(data, transfers);
}
}
}
});
相关文章推荐
- word2010使用:word2010中如何实现只有需要填写的部分才可以填写内容
- windows.setparent可以将一个窗口显示到别的位置上,可是如果我只是想将这个窗口上的内容复制一份并显示在别的位置,该如何做呢?
- c#如何实现excel的表间传值(把一excel表内容复制到另一excel表)?
- vue如何实现复制内容到粘贴板clipboard
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- 下拉列表框只能选择,我想选择后还可以允许用户对选择的内容进行修改,如何实现可编辑的下拉列表框?
- 如何可以用openFileDialog实现打开txt文档并显示到文档中的内容
- 如何实现象WORD里面用鼠标选中的字符背景色改变,然后可以复制背景色改变的字符?
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- c++ 如何实现vector内容的复制
- 如何实现win7不打开文件直接复制文件里面的内容
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- extjs4 grid 实现可以选择文本内容进行复制
- 如何利用C/C++逐行读取txt文件中的字符串(可以顺便实现文本文件的复制)
- [VB.NET]如何实现对 RichTextBox 内容的选定、复制?
- js如何实现网站内容禁止复制和粘贴、另存为?
- 如何在UpdatePanel中让GridView中的内容实现点击跳转
- 原生js实现复制内容到剪切板(解决jquery实现不了的问题)