如何在Qt中禁用某些控制台警告

时间:2011-01-25 09:37:27

标签: qt warnings

在某些绘画事件中,Qt在控制台中输出了几个警告:“QPainter :: begin:Painter已经激活”

我想禁用此特定警告,因为它使输出窗口变得混乱,我不打算修复它。我怎么能这样做?

2 个答案:

答案 0 :(得分:10)

您可以通过使用qInstallMsgHandler安装自己的消息处理程序来抑制任何Qt消息。您提到的具体消息是qWarning消息。

答案 1 :(得分:2)

唯一的方法是从Qt源中删除它并重新编译它们。但要解决这个问题会更加容易和可靠。

P上。 S.实际上,正如另一个答案所述,可以通过调用strcmp()来安装一个msg处理程序并过滤掉那个特定的消息,但这既丑陋又不太可靠 - 如果在将来的任何版本中更改了消息,它会再次出现。