pos機(jī)鍵盤(pán)說(shuō)明,獲取句柄并模擬鍵盤(pán)或鼠標(biāo)事件

 新聞資訊  |   2023-04-21 10:34  |  投稿人:pos機(jī)之家

網(wǎng)上有很多關(guān)于pos機(jī)鍵盤(pán)說(shuō)明,獲取句柄并模擬鍵盤(pán)或鼠標(biāo)事件的知識(shí),也有很多人為大家解答關(guān)于pos機(jī)鍵盤(pán)說(shuō)明的問(wèn)題,今天pos機(jī)之家(m.shineka.com)為大家整理了關(guān)于這方面的知識(shí),讓我們一起來(lái)看下吧!

本文目錄一覽:

1、pos機(jī)鍵盤(pán)說(shuō)明

pos機(jī)鍵盤(pán)說(shuō)明

模擬鍵盤(pán)鼠標(biāo)事件有兩種方法:

SendMessage or PostMessage

keybd_event,mouse_event

前者更強(qiáng)大,指定hwnd后可以后臺(tái)發(fā)送,而后者只能夠發(fā)送前臺(tái)信息,也就是必須窗口最前。

對(duì)于keybd_event,mouse_event,可以用一個(gè)簡(jiǎn)單的實(shí)例說(shuō)明一下:

SetCursorPos(x,y);

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);

mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

keybd_event(k,0,0,0);

keybd_event(k,0,KEYEVENTF_KEYUP,0);

模擬按鈕單擊事件

如有以下對(duì)話框:

編輯框關(guān)連了一個(gè)CString變量m-var。按鈕定義了一個(gè)單擊事件:

void CMyDlg::OnButton1()

{

UpdateData(1);

m_var = "simulation of Mouse single-click event!";

UpdateData(0);

}

在對(duì)話框類函數(shù)的OnInitDialog事件加入如下代碼:

BOOL CMyDlg::OnInitDialog()

{

CDialog::OnInitDialog();

HWND hWnddlg = AfxGetMainWnd()->m_hWnd; //主窗口句柄

HWND hwnd2=::GetDlgItem(hWnddlg,IDC_BUTTON1);//子窗口(或控件)句柄

::SendMessage(hwnd2,WM_LBUTTONDOWN,0,0);

::SendMessage(hwnd2,WM_LBUTTONUP,0,0);

……

}

對(duì)話框運(yùn)行后,即可在編輯框中輸入以下文字:simulation of Mouse single-click event!

自動(dòng)向打開(kāi)的記事本文件中輸入一個(gè)字母

//需要先打開(kāi)記事本

int main()

{

HWND hWnd = ::FindWindowW(L"Notepad",NULL); //搜索記事本程序主窗口句柄

HWND hWndc = ::GetWindow(hWnd,GW_CHILD); //獲得記事本客戶區(qū)句柄(該窗口是記事本主窗口的子窗口,即那個(gè)白色的可編輯區(qū)域) 。

if(hWndc) //如果獲得了該句柄

::SendMessage(hWndc,WM_CHAR,\'keyboard input!\',NULL);//發(fā)送按鍵消息

system("pause");

return 0;

}

上面控制臺(tái)程序運(yùn)行后,即可在打開(kāi)的詞本中添加"keyboard input!"文本。

-End-

以上就是關(guān)于pos機(jī)鍵盤(pán)說(shuō)明,獲取句柄并模擬鍵盤(pán)或鼠標(biāo)事件的知識(shí),后面我們會(huì)繼續(xù)為大家整理關(guān)于pos機(jī)鍵盤(pán)說(shuō)明的知識(shí),希望能夠幫助到大家!

轉(zhuǎn)發(fā)請(qǐng)帶上網(wǎng)址:http://m.shineka.com/news/21547.html

你可能會(huì)喜歡:

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 babsan@163.com 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。