VTK隐藏vtkOutputWindow窗口的正确方法

VTK隐藏vtkOutputWindow窗口

要求隐藏vtkOutputWindow窗口,但是不能把Warning警告和Error错误的信息都给屏蔽了


网上常见的错误方法:

现在百度搜索出来的方法几乎都是在这样做:在main文件中使用vtkOutputWindow::SetGlobalWarningDisplay(0) 屏蔽vtkOutputWindow窗口:

#include <vtkOutputWindow.h>

int main()
{
	vtkOutputWindow::SetGlobalWarningDisplay(0);
}

这样做确实能够让vtkOutputWindow窗口不弹出来,但是也会把运行时发生的Warning和Error这些警告都给屏蔽掉,不是指看不到了,而是本来会发生Error的地方,也能顺利通过了,意思是连Error都不会抛出了。所以这种方法会造成很多BUG没法发现,是很严重的问题。

我们实际要的是隐藏窗口,但是出现Error的话,我们也需要程序抛出Error。


正确方法:

其实vtk本身就提供了隐藏vtkOutputWindow的实现案例,官方示例

方法是将Error和Warning的信息输出到日志文件中,取代vtkOutputWindow。

#include <vtkFileOutputWindow.h>
#include <vtkOutputWindow.h>

int main()
{
	vtkNew<vtkFileOutputWindow> fileOutputWindow;
	fileOutputWindow->SetFileName("output.txt");
	vtkOutputWindow::SetInstance(fileOutputWindow);
}

这方法下Error也能正常抛出,也能隐藏vtkOutputWindow。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值