【问题标题】:Is there a way to keep all windows in focus within a Windows Forms application?有没有办法让 Windows 窗体应用程序中的所有窗口保持焦点?
【发布时间】:2019-07-30 19:47:53
【问题描述】:

我有一个应用程序,有时需要用户同时打开两个表单。我有主“主”表单窗口,还有一个计算器表单窗口。它不是一个普通的计算器,所以我希望计算器留在一个应用程序中。

填写主表格时,需要计算器算出一些数据输入。唯一的问题是,当使用calculator.ShowDialog() 时,主窗体失去焦点。计算器在主窗口的右侧打开。所以理想情况下,我会点击哪个窗口,获得焦点。

【问题讨论】:

  • 关注窗口的全部意义在于,嗯……关注它。如果您想专注于两个,那将无法达到目的。
  • 如果您想简单地在两者之间切换,您应该使用Form.Show(),您无需退出其中一个即可使用另一个。另一种解决方案是让计算器成为主应用程序的一部分。

标签: c# winforms focus autofocus


【解决方案1】:

只需使用form.Show() 而不是ShowDialog

【讨论】:

  • 老实说,我不知道 Show() 不会导致失去焦点。
  • 它确实会导致失去焦点,但与ShowDialog()不同的是,您可以在两者之间切换。
【解决方案2】:

我认为你可以添加代码行calculator.Activate();

【讨论】:

    猜你喜欢
    • 2020-01-24
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多