前端不會wordpress班級優(yōu)化大師頭像
- 操作系統(tǒng):ubuntu22.04
- OpenCV版本:OpenCV4.9
- IDE:Visual Studio Code
- 編程語言:C++11
算法描述
輪詢已按下的鍵。
函數(shù) pollKey
無等待地輪詢鍵盤事件。它返回已按下的鍵的代碼或如果沒有鍵自上次調(diào)用以來被按下則返回 -1。若要等待按鍵被按下,請使用 waitKey
。
注意
waitKey
和 pollKey
函數(shù)是 HighGUI 中唯一能夠獲取和處理 GUI 事件的方法,因此需要定期調(diào)用其中一個來進行正常的事件處理,除非 HighGUI 在一個處理事件的環(huán)境中使用。
該函數(shù)僅在至少創(chuàng)建了一個 HighGUI 窗口并且該窗口處于活動狀態(tài)時才工作。如果有多個 HighGUI 窗口,其中任何一個都可以是活動的。
函數(shù)原型
int cv::pollKey ()
參數(shù)
此函數(shù)不接受參數(shù)
返回值
- 如果有鍵盤事件發(fā)生,則返回 ASCII 碼對應的按鍵值。
- 如果沒有鍵盤事件,則返回 -1。
代碼示例
include <chrono>
#include <iostream>
#include <opencv2/opencv.hpp>
#include <thread>int main()
{// 創(chuàng)建窗口std::string winname = "Example Window";cv::namedWindow( winname, cv::WINDOW_NORMAL );// 顯示一個空圖像cv::Mat img( 480, 640, CV_8UC3, cv::Scalar( 255, 255, 255 ) );cv::imshow( winname, img );// 檢查鍵盤輸入while ( true ){// 使用 pollKey 檢查是否有鍵盤輸入int key = cv::pollKey();if ( key >= 0 ){// 如果有鍵盤輸入,則打印按鍵的 ASCII 碼std::cout << "Key pressed: " << key << std::endl;if ( key == 27 ){ // 按下 ESC 鍵退出break;}}// 等待一小段時間,防止 CPU 占用過高std::this_thread::sleep_for( std::chrono::milliseconds( 100 ) );}// 關(guān)閉所有窗口cv::destroyAllWindows();return 0;
}