سؤال

أرغب في تهيئة مسار البداية في Qt Treeview إلى منزل المستخدم على Linux Ubuntu.

enter image description here

لقد جربت هذا الكود لكنه لا يعمل.

QString sPath = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx";
dirmodel = new QFileSystemModel(this);
dirmodel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs);
dirmodel->setRootPath(sPath);
ui->treeView->setModel(dirmodel);
  • لقد اختبرت sPath :
    1. /home/<username>
    2. ${HOME}
    3. /home/casper/Music

لا أحد يعمل.=[

كيفية حل هذا؟

شكرا لك على مساعدتك.

هل كانت مفيدة؟

المحلول

بمجرد تحميل النموذج، أعتقد أنك بحاجة إلى الاتصال setRootIndex على القطعة الشجرة:

ui->treeView->setRootIndex(dirmodel->index("/home/casper"));

أو لأي دليل رئيسي (يعمل أيضًا على أنظمة التشغيل Windows وOSX وما إلى ذلك):

ui->treeView->setRootIndex(dirmodel->index(QDir::homePath()));
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top