KDE在控制台中编写(太多)

时间:2014-01-10 13:17:56

标签: c++ qt kde qtgui qfiledialog

我正在开发一个Qt GUI应用程序。

我的问题是我将控制台用于另一个线程(它在其中编写了他的通信),主要问题是当我创建一个QFileDialog(为了选择一个脚本文件)时,KDE正在写出无用的信息(对我来说至少)。

有没有办法从我的QFileDialog中删除所有可能性以便将任何内容写入consolet?是否有将主​​输出切换到另一个(无用)目标的技巧?

我的代码(但我认为它不会对你有所帮助):

void MyGUI::setPathWithFileExplorer()
{
  QFileDialog dlg;
  dlg.resize(320,240);
  QString fileName = dlg.getOpenFileName(this, tr("Open script file"), "~/", tr("Script Files (*.js)"));

  if(fileName != "")
    ui->editScriptPath->setText(fileName);
}

输出:

  

kded(21003)Mollet :: KioSlaveNotifier :: onDirectoryEntered:“trash:/”   kded(21003)Mollet :: KioSlaveNotifier :: onDirectoryLeft:“trash:/”   kded(21003)Mollet :: KioSlaveNotifier :: onDirectoryEntered:   “file:// [路径给我的用户文件夹]”kded(21003)   摩勒:: KioSlaveNotifier :: onDirectoryLeft:   “file:// [路径给我的用户文件夹]”kded(21003)   摩勒:: KioSlaveNotifier :: onDirectoryEntered:   “file:// [路径到我的用户文件夹]”kfilemodule(21676)   KSambaSharePrivate :: testparmParamValue:我们遇到了一些错误   运行testparm“从/etc/samba/smb.conf加载smb配置文件   加载的服务文件OK。警告:设置'security = ads'应该   不要与'password server'参数结合使用。 (默认情况下   Samba将发现正确的DC以自动联系)。警告:   您有一些超过12个字符的共享名称。这些   某些老客户可能无法访问。 (例如.Windows9x,   WindowsMe和Samba 3.0之前的smbclient。)“   QInotifyFileSystemWatcherEngine :: addPaths:inotify_add_watch失败:   权限非符合QFileSystemWatcher:无法添加路径:   的/ var / lib中/桑巴/ usershares

1 个答案:

答案 0 :(得分:3)

我建议使用kdebugdialog然后使用Deselect All。在这里,您可以在我的机器上看到内联屏幕截图。

enter image description here

如果失败,您可以始终使用QFile将输出记录到专用文件中,然后在单独的提示或应用程序中对其进行监控。

如果你这样做,你甚至可以看看5.2中添加的记录器功能,如果你碰巧能够使用该版本。