2011-07-04 57 views
7

我正在使用C++版本的OpenCV 2.3,並且正在努力完成一項基本任務。我希望做的是創建一個窗口,並將其移動到特定的位置使用,例如在屏幕上:MoveWindow()在C++ OpenCV 2.3中缺失

cv::namedWindow("My Window", 1); 
cv::MoveWindow("My Window", 10, 10); 

然而,看來的MoveWindow()功能不可用。從OpenCV 2.3文檔(link)看來有C和Python實現,但沒有C++。這是否意味着有更好的方法來做到這一點?

從文檔的相關章節:

MoveWindow 
========== 
Moves window to the specified position 
-------------------------------------- 
C: void cvMoveWindow(const char* name, int x, int y) 

Python: cv.MoveWindow(name, x, y) → None 

Parameters: 

- name – Window name 
- x – The new x-coordinate of the window 
- y – The new y-coordinate of the window 

解決:作爲OpenCV的最新版本,現在有一個cv::MoveWindow("const string& winname, int x, int y)功能。參考文獻here

回答

9

你應該使用這個C函數:

cvMoveWindow(const char* name, int x, int y); 

您可以通過下載OpenCV 2.3 for *nix驗證此信息,並根據C++樣本目錄OpenCV-2.3.0/samples/cpp/tutorial_code/Basic/搜索名爲Drawing_1.cpp文件。它使用C++接口來處理所有事情。,除了,移動窗口。

看起來像C++接口沒有這個任務的方法。

+0

這樣做的竅門,謝謝。 – Chris