zoukankan      html  css  js  c++  java
  • Q键连发。按住Q键则连发。松开则停止1。

    Q键连发。按住Q键则连发。松开则停止1。  1楼. 检测 按键按下,则允许某一段后台程序开始执行。


    2楼. 获得后台输入窗口的 Hwnd。

    子窗口要取子窗口的Hwnd。DX软件绘图的窗口,要用DX按键模式。

    .

    用API函数,

    ret = GetAsyncKeyState(81)来检测。

    可以这样简单理解,

    ret 小于 -1,则为按住。

    ret 大于 -1,则不是按住。

    .

    检测到Q键按下,则循环开关=1,允许某一段后台程序开始执行。

    检测到Q键弹起,循环开关=0,结束某一段后台程序的执行。

    .

    while(1)//循环

    while(循环开关)//小循环

    后台按键Q(Hwnd)

    sleep(10)

    end

    //

    sleep(100)

    end


    GetAsyncKeyState,

    所在库:user32.dll。

    <返回值>: Long

    参数1:integer

    //

    自对GetAsyncKeyState函数的上 一次调用以来,

    如键 已被按过,则位0设为1;否则设为0。

    //

    如键 目前处于按下状态,则位15设为1;如抬起,则为0。

    //

    GetAsyncKeyState函数返回的是指定虚拟键瞬时的状态值,它有四种返回值:

    0---键当前未处于按下状态,而且自上次调用GetAsyncKeyState后改键也未被按过;

    1---键当前未处于按下状态,但在此之前(自上次调用GetAsyncKeyState后)键曾经被按过;

    -32768(即16进制数&H8000) --- 键当前处于按下状态,但在此之前(自上次调用GetAsyncKeyState后)键未被按过;

    -32767(即16进制数&H8001) --- 键当前处于按下状态,而且在此之前(自上次调用GetAsyncKeyState后)键也曾经被按过。

    //

    VK_LBUTTON 鼠标左键 0x01

    VK_RBUTTON 鼠标右键 0x02

    VK_CANCEL Ctrl + Break 0x03

    VK_MBUTTON 鼠标中键 0x04

    VK_BACK Backspace键 0x08

    VK_TAB Tab键 0x09

    VK_RETURN 回车键 0x0D

    0x是C语言的16进制数。

    16进制数的0D,写成10进制数是13。
    .
    .
    前台按键的API,和后台按键的API是分开的。各有各的通道。

  • 相关阅读:
    hdu 1978 How many ways
    hdu 2209 翻纸牌游戏
    hdu 2149 Public Sale (博弈规律题)
    CF 353C Find Maximum #205 (Div. 2)
    barrier and Fence
    window coordinate
    GPU hang
    the application was unable to start correctly 0xc000007b
    vertex buffer 数据结构 如何读vb的memory pool
    map
  • 原文地址:https://www.cnblogs.com/champion8/p/5555582.html
Copyright © 2011-2022 走看看