c ++ / Qt如何处理剪贴板来复制文件

时间:2015-02-20 10:16:36

标签: c++ qt qtreewidget

c ++ / Qt如何处理剪贴板来复制文件

您好,

我目前正在使用C ++ / Qt开发应用程序。我在Drag and Drop中做了一些修改,以便能够将文件从本地计算机(Mac OSX)复制到Android设备(使用MTP访问)。 Mtp部分已经完成。现在,我无法使用拖放移动将文件从Android设备复制到本地机器。

下面是包含项目

的类TreeWidget的init
TreeView::TreeView(mtp_wrapper& device, MainWindow& parent) :
    m_device(device), w_parent(parent)
{

    //new FileMimeType();

    setSortingEnabled(true);
    setColumnWidth(0, 400);
    setExpandsOnDoubleClick(true);

    setDragDropMode(DragDrop);
    setDragEnabled(true);
    setDropIndicatorShown(true);
    setMouseTracking(true);
    setAcceptDrops(true);
    setAutoFillBackground(true);

定义了类的标题

class TreeView : public QTreeWidget
{
    Q_OBJECT
public:
    TreeView(mtp_wrapper& device, MainWindow& parent);

我还重用了

下面的所有私人广告位
void dragEnterEvent(QDragEnterEvent *event);
void dropEvent(QDropEvent *event);
void dragMoveEvent(QDragMoveEvent * event);
void dragLeaveEvent(QDragLeaveEvent* event);
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);

奇怪的是,默认情况下,将文件从我的应用程序移动到本地计算机(桌面或查找程序)时,会创建一个文件文件名的文件。默认情况下,Qt创建一个filename.textClipping文件。

我需要的是阻止这个剪辑文件的创建,并将我自己的复制功能从android dev替换为机器。

我的其他问题是,当我的鼠标在桌面上或查找器中的某个地方时,我看不到可以使用哪种类型的事件/ mimeData来捕获目的地

有关需要解决的课程的任何想法

由于

0 个答案:

没有答案