在Qml中创建一个新文件夹

时间:2013-06-07 10:16:06

标签: java qt qml

我想在Qml中创建一个新文件夹...所以我通过Qt发现它... ..所以我想在Qt C ++和Qml之间集成这个...... ..怎么可能......

    QDir dir(“path/to/dir”);
    if (!dir.exists()) 
    { 
     dir.mkpath(”.”);
    }

否则,是否有任何选项可以直接在Qml中创建新文件夹...请提出解决方案。谢谢。

1 个答案:

答案 0 :(得分:1)

无法直接从QML或JavaScript创建目录。您必须使用C ++创建一个对象并将其“导出”(使其可见)到QML。您可以从QML代码中调用此对象的方法,它将创建目录。

这里介绍了连接C ++和QML的基本思想: Reading and writing files in QML 你唯一需要改变的是交换createDir的写入方法(或任何你想要的)并插入你的代码。

另一种方法是设置contextProperty ex。

QQmlContext *context;
context = viewer.rootContext();

context->setContextProperty("DirManager", &dManager);

(DirManager是你的类)并在方法的返回类型之前使用宏Q_INVOKABLE