2013-10-21 36 views
0

Qt 4.8.1使用OpenCV 2.4.2的C++控制檯應用程序正在通過highgui模塊讀取和顯示USB攝像頭圖像。 它(使用Qt內部本身我認爲)使用功能QString和OpenCV cv.namedWindow()

void namedWindow(const string& winname, int flags=WINDOW_AUTOSIZE) 

但是顯示圖像創建一個窗口,我缺少的是如何將字符串轉換爲不結束的格式爲不可讀/加擾/垃圾字符。這是我已經嘗試過:

QString windowname = "My View"; 
namedWindow(windowname.toStdString()); 

如何將QString轉換爲某些功能可以正確顯示的東西?

回答

0

嘗試以下

QString windowname = "My View"; 
namedWindow(windowname.toStdString().c_str(), CV_WINDOW_AUTOSIZE); 
+0

namedWindow聲明爲:namedWindow(常量串winname,整數標誌= WINDOW_AUTOSIZE);你試圖把字符*,而不是字符串,它不應該工作。但我並沒有對此讚不絕口:)。 –

+0

它有另一個重載,它確實有效,我一直都在使用它,所以你不應該downvoting :) – guneykayim