如何在Windows 10中禁用打印屏幕功能

时间:2019-01-31 10:35:57

标签: java swing windows-10 screenshot printscreen

我想在Windows 10的Java Swing Desktop应用程序中禁用PrintScreen。

当我们按下Windows + PrintScreen键时,Win 10将截图保存在Pictures \ Screenshots文件夹中,仅按下PrintScreen会将截图保存在Dropbox文件夹(如果已安装)中,在某些键盘中,功能+ F12键也是如此。当有人按下在Win 7中有效但在Win 10中无效的PrintScreen键时,我能够清除剪贴板。以下是我在Windows 10中尝试过的代码。

private class MyDispatcher implements KeyEventDispatcher
{    
boolean status=false;
 @Override
public boolean dispatchKeyEvent(KeyEvent e)
{            
    switch (e.getID()) 
    {
        case KeyEvent.KEY_PRESSED:
        System.out.println("KEY_Preessed : "+e.getID()+" code="+e.getKeyCode());                     
        if(e.getKeyCode()==KeyEvent.VK_PRINTSCREEN || e.getKeyCode()==18 )
        {
            status=true;
            System.err.println("key VK_PRINTSCREEN pressed="+status);
            // System.out.println("2test2 KEY_Preessed"+e.getID()+" code="+e.getKeyCode());
        }
        break;
        case KeyEvent.KEY_RELEASED:
        //System.out.println("2test2 KEY_RELEASED");
        if(e.getKeyCode()==KeyEvent.VK_PRINTSCREEN)
        {
            //setFocusable(true);
            StringSelection ss = new StringSelection("??????");
            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
            e.consume();
            status=true;
            System.err.println("key VK_PRINTSCREEN released="+status);
        }
        break;
        case KeyEvent.KEY_TYPED:
        System.out.println("key type");
        break;
        default:
        break;
    }
    // System.out.println("status= "+status);
    return status;
}
}

我想在我的应用程序运行时禁用Winodows 7和10中的Printscreen(或屏幕截图)功能。但是它在Windows 10中不起作用。尝试了各种Web解决方案,但没有成功。

0 个答案:

没有答案