- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我打开了一个窗口,就像 OpenCV 教程所示,但我希望能够关闭该窗口并在程序中执行其他操作。图像显示正确,但是当调用 destroyWindow 时,它似乎什么也没做,只是移到下一行代码。我也尝试过 destroyAllWindow() ,结果相同。我发现的与此相关的大多数问题都是针对 C 的,或者他们只是说使用 destroyWindow() 但这对我不起作用。
#include <iostream>
#include <string>
#include "opencv2/core/core.hpp"
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>//FOR TESTING
void MyPause(std::string msg){
if(msg != ""){
std::cout << "[+] " << msg << std::endl;
}
std::cout << "Press enter to continue" << std::endl;
std::cin.get();
}
void DisplayMat(cv::Mat img){
cv::namedWindow( "Input", cv::WINDOW_AUTOSIZE );// Create a window for display.
cv::imshow( "Input", img );
cv::waitKey(0);
cv::destroyWindow("Input");
return;
}
std::string filename = "/home/nedwards/Code/projectFiles/testMedia/myYellow.jpg";
int main(){
DisplayMat(som.inputImg);//just assume that som.input is a correctly opend Mat... it is!
MyPause("END OF MAIN");
return 0;
}
最佳答案
一个可能的解决方案是放置:
cvStartWindowThread();
靠近代码的开头(main 的开头)。这可以帮助解决调用 cvDestroyWindow() 时经常发生的缓慢事件交换。您可以看看here更多细节。
顺便说一句,但这并不是完美的解决方案。它与我的一些代码配合得很好,但目前当涉及 waitKey() 等其他事件监听器时,我遇到了问题,我想这是可以理解的。
关于c++ - OpenCV destroyWindow() 不执行任何操作。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25344108/
DestroyWindow()文档说明如下: The function also destroys the window's menu, flushes the thread message queu
进行一些dll注入(inject)并需要销毁某个窗口。但是,DestroyWindow 仅当创建窗口的同一线程调用它时才起作用。否则,它将失败并显示错误 5:访问被拒绝。 我想也许我可以通过获取它的线
WndProc是主窗口的窗口过程。 ChildProc是子窗口的窗口过程。 ChildProc 未收到 WM_DESTROY。我做错了什么? 编辑:如果我从 hChild = CreateWindow
我在创建主窗口后创建了一个窗口,但在其句柄上调用 DestroyWindow 会关闭整个应用程序,我怎样才能简单地摆脱它? 它看起来像这样: BOOL InitInstance(HINSTANCE h
好吧,我可以理解该函数是否会返回错误或抛出异常,但出于某种原因,我对 DestroyWindow 的调用会在此时退出程序。就像实际的 exit() 函数改变了我的程序流程一样。文档没有提到这样的事情,
我打开了一个窗口,就像 OpenCV 教程所示,但我希望能够关闭该窗口并在程序中执行其他操作。图像显示正确,但是当调用 destroyWindow 时,它似乎什么也没做,只是移到下一行代码。我也尝试过
我有这门课: WNDCLASSEX ActionButton::m_wndClass = CreateWndClass(); ActionButton::ActionButton() : m_
嗨,我正在创建 Windows 上下文菜单的模拟。 显示对话框执行以下操作: 使用 CreateDialogIndirectParam 创建一个对话框 运行消息循环: while ( Continue
我目前正在 MFC 应用程序中处理对话框,诚然,我对 MFC 还很陌生。 假设我有一个类 A(派生自 CDialog),它使用类 B(也派生自 CDialog) >)。因此,A::OnInitDial
您好,我正在使用 MFC 制作一个基于对话框的应用程序: BOOL CClockMasterDlg::OnInitDialog() { CDialogEx::OnInitDialog(); m_Mod
在我的演示应用中 case WM_CLOSE: DestroyWindow(hndl); return 0; 和 case WM_CLOSE: PostQuitMessage(
我刚开始用 Python 学习 OpenCV for Raspberry Pi 3。我为 namedWindow() 写了一个简单的代码。问题是 destroyWindow() 没有像我预期的那样工作
我在 Mac OS X (Lion) 上的 Python 2.7 下使用 openCV...每当我运行代码以简单地显示相机源(来自 iSight)时,Python 就会卡住。看起来相机实际上并没有得到
我正在用 C++ 编写实时视频处理程序,并希望能够在彩色、灰度和单色模式下切换具有相同 mjpeg 流的三个窗口。我的所有图像源都在运行,但是,由于我的屏幕很小,我希望能够单独打开和关闭它们。为此,我
在下面的代码中,DestroyWindow 或DestroyAllWindows 无法关闭ShowImage 打开的窗口。当我试图通过单击关闭按钮关闭它时,窗口暂停。杀死窗口后,整个 IDLE 关闭。
我的程序使用以下代码生成一系列窗口: def display(img, name, fun): global clicked cv.NamedWindow(name, 1) c
我是一名优秀的程序员,十分优秀!