【问题标题】:Lock the MFC Screen锁定 MFC 屏幕
【发布时间】:2012-08-08 21:05:25
【问题描述】:

我有一个 MFC 应用程序,其中有使用 CPropertySheet 创建的向导。我几乎没有控件和“下一步”按钮。当我按下“下一步”按钮时,我将进行各种操作,那时,我想锁定屏幕,以便用户无法点击或在屏幕上进行任何操作。请建议我一些处理这种情况的方法?

【问题讨论】:

  • 您要锁定您的应用程序屏幕还是整个计算机屏幕?
  • @Pankaj 我想锁定特定的应用程序屏幕,这样用户就不会对其进行任何操作。

标签: mfc screen-lock


【解决方案1】:

最好是使用 DoModal 调用一个对话框,禁用“关闭”并且没有按钮来丢弃对话框。在该对话框中,您实际上可以发出一些有关进度的有意义的消息,甚至显示进度条。通过这种方式,您可以有效地阻止用户对应用程序执行任何操作,并为他提供一些反馈,以便他知道正在完成一些工作。

【讨论】:

    【解决方案2】:

    您可以使用EnableWindow“锁定”一个窗口。这只是一个窗口,请注意,用户仍然可以与您尚未调用该函数的其他窗口/应用程序进行交互。

    HWND hWnd;
    CWnd *pWnd;
    
    // do stuff
    
    // lock window
    ::EnableWindow(hWnd, FALSE);
    
    // do stuff
    
    //unlock window
    ::EnableWindow(hWnd, TRUE);
    
    // lock window
    pWnd->EnableWindow(FALSE);
    
    // do stuff
    
    // unlock window
    pWnd->EnableWindow(TRUE);
    

    【讨论】:

      猜你喜欢
      • 2013-04-15
      • 2016-05-28
      • 1970-01-01
      • 2011-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多