Pergunta

Estou desenvolvendo um aplicativo Qt GUI.

Meu problema é que eu uso o console para outro thread (ele escreve sua comunicação nele), e o principal problema é que quando eu crio um QFileDialog (para selecionar um arquivo de script), o KDE está gravando informações inúteis (para mim em ao menos).

Existe uma maneira de remover todas as possibilidades do meu QFileDialog de escrever qualquer coisa no console?Existe um truque para mudar a saída principal para outro alvo (inútil)?

Meu código (mas não acho que vá realmente ajudá-lo):

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);
}

Saída :

kded(21003) Mollet::KioSlaveNotifier::onDirectoryEntrado:"Trash:/" Kded (21003) Mollet :: Kioslaventotifier :: Ondirectoryleft:"Trash:/" Kded (21003) Mollet :: Kioslaventotifier :: Ondirectoryentered:"Arquivo: // [caminho para minha pasta de usuário] kded (21003) Mollet :: Kioslavenfilotifier :: ondirectoryleft:"Arquivo: // [caminho para minha pasta de usuário] kded (21003) Mollet :: Kioslavenyotifier :: ondirectoryentered:"Arquivo: // [caminho para minha pasta de usuário] kfilemodule (21676) ksambashareprivate :: testParmParamValue:Recebemos alguns erros ao executar arquivos de configuração do testParm "Carregar SMB de /etc/samba/smb.conf carregar o arquivo de serviços OK.AVISO:A configuração 'Security = ADS' não deve ser combinada com o parâmetro 'senha servidor'.(Por padrão, o Samba descobrirá o DC correto para entrar em contato automaticamente).AVISO:Você tem alguns nomes de compartilhamento com mais de 12 caracteres.Estes podem não estar acessíveis a alguns clientes mais velhos.(Por exemplo.Windows9x, WindowsMe e SMBClient antes do samba 3.0.) "QinotifyFilesystemwatcherengine :: addpaths:inotify_add_watch falhou:Permissão não acordada QFileSystemWatcher:falha ao adicionar caminhos:/var/lib/samba/usershares

Foi útil?

Solução

Eu sugeriria usar kdebugdialog e então Deselect All.Aqui você pode ver uma captura de tela embutida na minha máquina.

enter image description here

Caso contrário, você sempre poderá usar QFile para registrar sua saída em um arquivo dedicado e monitorá-la em um prompt ou aplicativo separado.

Se você seguir esse caminho, poderá até dar uma olhada na funcionalidade do logger adicionada no 5.2, se conseguir usar essa versão.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top