OpenCV & Qt - SetGeometry-Error

OpenCV & Qt - SetGeometry-Error

本文关键字:SetGeometry-Error Qt OpenCV      更新时间:2023-10-16

我浏览了以下链接,但找不到解决问题的方法:

Qt 设置几何:无法设置几何图形

无法在Qt中设置几何图形

https://forum.qt.io/topic/38304/setgeometry-unable-to-set-geometry

下面的代码生成错误。使用 Visual Studio 进行调试时,图像仍会显示。但是当直接使用可执行文件时,程序崩溃。

Q窗口::设置几何:

无法设置几何 374x133+2679+423 在QWidgetWindow/'TestWindowWindow'上。生成的几何形状: 376x141+2679+423 (帧: 8, 31, 8, 8, 自定义边距: 0, 0, 0, 0, 最小尺寸:374x133,最大尺寸:374x133(。

我的代码如下所示:

#include "stdafx.h"
#include <iostream>
#include <opencv2opencv.hpp>
using namespace std;
int main()
{
  cout << "Test-Console for OpenCV" << endl;
  string path = "C:/Data/01_Daten/tiger.bmp";
  cv::Mat image = cv::imread(path, cv::IMREAD_GRAYSCALE);
  if (image.empty())
  {
    cout << "Failed to read image" << endl;
    getchar();
    return 1;
  }
  cv::namedWindow("TestWindow", cv::WINDOW_AUTOSIZE);
  cv::imshow("TestWindow", image);
  cout << "Press any key to exit..." << endl;
  cv::waitKey(-1);
  return 0;
}

我正在使用Visual Stuido 2013,OpenCV 3.3.0,QT 5.9.2OpenCV是用WithQT编译的。

我的问题的解决方案是重建OpenCV,不仅选择了选项WithQT,还选择了WithOpenGL

不确定这是否是解决问题的唯一方法,正如我所假设的那样,QT 模块甚至应该在没有 OpenGL 部件的情况下工作,但它对我有所帮助。