QTreeWidget和文件路径绑定,我要做到的是双击某叶子节点,便读出该文件的路径
自定义了Mainwindow的槽函数DisPlayPic() 并设置了QObject::connect(treeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*, int)), MainWindow, SLOT(DisPlayPic(QTreeWidgetItem *,int)))
DisPlayPic槽代码如下:
void MainWindow::DisPlayPic(QTreeWidgetItem * item,int index)
{
QMessageBox *mbox;
QString FilePath=item->text(index);
QTreeWidgetItem * parent;
QString itemText=FilePath;
while(QString::compare(itemText,QObject::tr("D:\\"))!=0) //QTreeWidget根节点也是从D盘开始的
{
parent=item->parent();
itemText=parent->text(index);
FilePath=itemText+"\\"+FilePath;
}
mbox=new QMessageBox("提示",FilePath,QMessageBox::Critical,QMessageBox::Ok|QMessageBox::Default,QMessageBox::Cancel|QMessageBox::Escape,0);
mbox->show();
}
现在出现的问题是:
比如文件路径为:D:\a\b\c\d\e\f.txt
双击D或a等前两层节点时,可以读出路径,再往后就不行了(程序就没反应了)
请指点