TreeViewer选择和剪贴板

编程入门 行业动态 更新时间:2024-10-21 20:37:36
本文介绍了TreeViewer选择和剪贴板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

是否可以在剪贴板中放置多个对象(代表TreeViewer选择)?这是我的剪切代码.

Is it possible to place more than one object (which represent TreeViewer selections) into the clipboard? Here's my Cut code.

static public void Cut(EssentialData dataInst) { IStructuredSelection selection = (IStructuredSelection)dataInst.getTreeViewer().getSelection(); if(selection == null) { System.err.println("selection received was null"); return; } Object[] objects = selection.toArray(); //because setContents requires a Transfer object for every object sent List<Transfer> typesList = new ArrayList<>(); for(int i = 0; i < objects.length; i++) typesList.add(FileEntryTransfer.getInstance()); final Clipboard cb = new Clipboard(Display.getCurrent()); cb.setContents(objects, typesList.toArray(new Transfer[]{})); cb.dispose(); for(int i = 0; i < objects.length; i++) dataInst.getFileManager().removeEntry((FileEntry)objects[i]); dataInst.getTreeViewer().refresh(false); }

我要做的是将多个选择(FileEntry的实例)放置到剪贴板中.

What I'm trying to do is place multiple selections, which are instances of FileEntry, into the clipboard.

FileEntryTransfer是我的自定义ByteArrayTransfer类,我也将其用于DND.它运作良好,但我注意到setContents()实际上只向它发送一个FileEntry对象,而不是对象数组(这正是我想要的).

FileEntryTransfer is my custom ByteArrayTransfer class that I also use for DND. It works well, but I noticed that setContents() actually sends it only one FileEntry object as opposed to an array of objects (which is what I want).

有什么想法吗?

[edit]感谢vanaprogeja,我用

[edit]Thanks to vanaprogeja, I sovled it with

cb.setContents(new Object[]{ objects }, new Transfer[] { FileEntryTransfer.getInstance() });

推荐答案

怎么样:

cb.setContents(new Object[]{ objects }, new Transfer[] { FileEntryTransfer.getInstance() });

更多推荐

TreeViewer选择和剪贴板

本文发布于:2023-11-03 15:18:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1555432.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:剪贴板   TreeViewer

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!