OpenCVでウインドウの枠を非表示にしたいと思いました
これのタイトルとか外枠ですね
ソースはこれ.WINAPIを使用して,ウインドウを弄ります.
環境は C++, windows7 64bit
適当に書いてるので変数などは随時補完してください
#include "windows.h" std::string WINNAME = "test"; //ウインドウ作成 cv::namedWindow(WINNAME, CV_WINDOW_NORMAL); //WinAPIでウインドウの設定を弄る HWND a = FindWindow(NULL, WINNAME.c_str()); //名前からウインドウを検索 std::stringからLPCTSTR変換をしている SetWindowLongPtr(a, GWL_STYLE, WS_POPUP); //WS_THICKFRAME : 細枠 | WS_POPUP 枠ほぼなし SetWindowPos(a, NULL, movex, movey, width, height, SWP_DRAWFRAME | SWP_SHOWWINDOW | SWP_FRAMECHANGED); //これがないと再描画されない cv::imshow(WINNAME, img); cv::waitKey(0);
でこうなります.わかりにくい・・・
SetWindowPosは実行しないと再描画されないみたいです.またSWP~のパラメータはこうすれば動いただけなので不必要なものがまぎれているかも