Чтобы создать новую папку в Qml

Я хочу создать новую папку в Qml… Итак, я узнал об этом через Qt…..поэтому я хочу интегрировать это ниже Qt C++ с Qml…..Как это возможно…

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

Или же есть ли какие-либо варианты создания новой папки непосредственно в Qml… Пожалуйста, предложите решения. Заранее спасибо.


person user2459619    schedule 07.06.2013    source источник


Ответы (1)


Невозможно создать каталог непосредственно из QML или JavaScript. Вам нужно будет создать объект на C++ и "экспортировать" его (сделать видимым) в QML. Затем вы можете вызвать метод этого объекта из своего кода QML, и он создаст каталог.

Основная идея соединения C++ и QML описана здесь: Чтение и запись файлов в QML Единственное, что вам нужно изменить, это заменить метод записи на createDir (или что вы хотите) и вставить свой код.

Другой способ сделать это — установить contextProperty ex.

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

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

(где DirManager — ваш класс) и используйте макрос Q_INVOKABLE перед типом возвращаемого значения вашего метода.

person prajmus    schedule 07.06.2013