Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

09.07.2009, 22:39

[Qt] Verzeichnis erstellen

Hi Leute, folgendes:
Ich hab ein QTreeView und ein QDirModel. Jetzt will ich im aktuell selektierten Ordner ein neues Verzeichnis erstellen.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
void Suite::on_actionNeuer_Ordner_triggered()
{
    bool ok;
    QString dirname = QInputDialog::getText(this, "Neuer Ordner", "Ordnername:", QLineEdit::Normal, "", &ok);

    if(ok && !dirname.isEmpty())
    {
        if(!model->mkdir(ui->ArchivTree->currentIndex(), dirname).isValid())
        {
            QMessageBox::information(this, "Fehler", "Ordner konnte nicht erstellt werden");
        }
    }
}


Aber es wird kein Ordner erstellt.
In model ist das QDirModel gespeichert, das ich für den TreeView benutze, es wird auch alles richtig angezeigt.
Ich hab schon ne ganze Weile gegooglet, aber das einzig brauchbare, was ich gefunden hab, war der Hinweis, dass currentIndex auf einen gültigen Ordner zeigen muss.
Aber das tut es ja eigentlich, wenn ich im TreeView einen Ordner markiere oder?

Edit:
Problem gelöst: Es ist doch kein Verzeichnisname im TreeView - den muss man sich scheinbar erst noch zusammenzimmern mit QDirModel::filePath(index).

C-/C++-Quelltext

1
2
3
QDir dir(model->filePath(ui->ArchivTree->currentIndex()));
dir.mkdir(dirname);
model->refresh();