首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关掉显示器?

关掉显示器?
EN

Stack Overflow用户
提问于 2016-05-10 20:49:05
回答 1查看 7.5K关注 0票数 5

我有windows 10 64位,我花了很多时间在屏幕后面编程,我需要时不时地休息一下,通过让屏幕变黑来限制屏幕光线和辐射与我的头部相撞,就像关掉屏幕一样。

我可以做的是下降到登录屏幕,但我需要看到它黑色的解脱!我真正希望实现的是当sometime.Can不活跃的时候,你得到的黑屏幕,我是通过编程的方式实现的?

下面是我到目前为止掌握的代码:

代码语言:javascript
复制
#include <Windows.h>

#define KEY_DOWN(key) ((::GetAsyncKeyState(key) & 0x80000) ? 1 : 0)
#define KEY_UP(key)   ((::GetAsyncKeyState(key) & 0x80000) ? 0 : 1)

int main(void)
{
    // Hide the console window
    HWND hWnd;
    AllocConsole();
    hWnd = FindWindowA("ConsoleWindowClass", NULL);
    ShowWindow(hWnd, 0);

    //Press ctrl + alt + 'L' to lock / Press ctrl + 'E' to terminate the program
    while (1)
    {
        if (::GetAsyncKeyState('L') == -32767)
        {
            if (KEY_DOWN(VK_CONTROL) && KEY_DOWN(VK_MENU))
                LockWorkStation();
        }
        if (::GetAsyncKeyState('E') == -32767)
        {
            if (KEY_DOWN(VK_CONTROL))
                return 0;
        }
    }
    return 0;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-10 20:53:29

使用SC_MONITORPOWER参数对WM_SYSCOMMAND消息关闭监视器:

代码语言:javascript
复制
SendMessage(handle, WM_SYSCOMMAND, SC_MONITORPOWER, 2);

第四个参数的参数2关闭监视器。

另见https://msdn.microsoft.com/en-us/library/windows/desktop/ms646360(v=vs.85).aspx

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37148702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档