使用QText浏览器打开桌面

问题描述:

现在我在QText浏览器中显示/ home/binary /之类的东西。现在我想通过点击这个文本来打开文件夹。怎么做 ?在此先感谢使用QText浏览器打开桌面

这是我的示例代码。我显示结果 小号

bool MainWindow::displayResult(multimap<string, 

字符串> &结果映射,串&文件路径) { 多重映射:迭代ITER; bool fileStatus = false; int noOfLocFound = 0,forAppending = 0; QString no;

noOfLocFound = resultMap.size(); 

    if (noOfLocFound != 0) 
     ui->textBrowser->append("<i>File found at <b>" + no.setNum (

noOfLocFound)+“locations”);

for (forAppending = 0,iter = resultMap.begin(); iter != 

resultMap.end(); iter ++, forAppending ++) { string file = iter-> first; string dir = iter-> second;

 if (forAppending == 0) 
      filePath.append(dir); 
     else 
      filePath.append(","+dir); 

     QString qdir = QString::fromStdString(dir); 

     cout << "Display"; 

     ui->textBrowser->append(qdir); 
     fileStatus = true; 

    } 

    if (fileStatus == false) 
    { 
     ui->textBrowser->append("File not 

发现“); 返回FALSE; }

return true; 
} 

通过 ”打开文件夹“,你的意思是,打开文件对话框,供用户选择的内在的东西给定的目录?

如果是这样,你可能想要将你的QTextBrowser的点击信号连接到一个看起来像这样的插槽:

// connect events, in MyWindow constructor, or whereever... 
connect(textbrowser, SIGNAL(mousePressEvent(QMouseEvent*)), this, SLOT(openFileDialog(QMouseEvent*))); 

void MyWindow::openFileDialog(QMouseEvent* event) { 
    Q_UNUSED(event); 

    QStringList files = QFileDialog::getOpenFileNames(this, "Select a file...", 
     textbrowser.plainText()); 

    // do something with the files here... 
} 
+0

让我以另一种方式提出我的问题----现在我正在QText Browser中显示结果。结果将会像/ home/User /,/ media/Arena /等等。现在我想通过点击QText Browser中显示的这个结果打开这个文件夹。但我没有任何想法如何做到这一点。在有人问我使用锚单击的线程之一,但我不知道如何使用它。所以你可以给我一段关于如何去做的代码。 Tanx提前。 P.S我正在使用QT creato – Allwyn 2010-12-21 07:49:19

+0

也许如果你发布了一些现有的代码,很容易看到想要完成什么? – Mikesname 2010-12-21 08:09:25