代码之家  ›  专栏  ›  技术社区  ›  andreas buykx

为什么模态/无模式对话框称为模态/无模式?

  •  28
  • andreas buykx  · 技术社区  · 15 年前

    我总是很难记住模式或无模式对话框是应用程序其他部分的阻塞操作。

    有人知道为什么这样叫他们吗?

    4 回复  |  直到 15 年前
        1
  •  23
  •   Calmarius    10 年前

    通过模式对话框,可以在特定的 模式 (如果愿意,则为另一种“状态”),仅接受与该“模式”相关的操作,从而阻止对话框之外的UI操作。

    在安德烈亚斯的提示下,我认为我可能不得不像往常一样去挖掘那些尘土飞扬的Windows API书籍,一个已经被广泛接受的单词或表达式的词源/起源只能在早期文档中找到,但事实上,我们仍然可以在 an online glossary from MS . 模式条目显示(重点是我的):
    情态动词
    限制性或有限的相互作用 由于在模式下运行 .modal通常描述限制用户与所有者窗口交互的辅助窗口。另请参见:无模式。

        2
  •  4
  •   ddd    15 年前

    模态系统是具有多种“操作模式”的系统。这样的系统通过使用按键在模式之间切换,例如“esc”“ctrl+s”。一个很好的例子是VIM文本编辑器,它在“编辑文本模式”和“导航文本模式”之间切换。

    因此,模式对话框是通过在操作期间将主程序切换到其他模式来阻止主程序的对话框。

        3
  •  2
  •   Reed Copsey    15 年前

    我相信这是给 Linguistic Modality 他说:“我想,我是一个很好的朋友。”“模态”对话框(通常)用于显示属于以下典型模态的信息:

    • 声明的
    • 表示疑问的
    • 感叹的

    虽然我在寻找一个更明确的答案,但我觉得这是事实的一部分原因,那就是模态对话的讨论方式。例如,取 MSDN -它们的标准是“显示重要消息的对话框应始终是模态的。”,可以很容易地重写为“内容为声明性模态的对话框[此处为模态的语言定义]应创建为模态窗口。”

    还有其他的悬崖峭壁。例如,对话框中的“dialog”一词——它之所以被称为“dialog box”,是因为它应该在系统和用户之间呈现一个对话或对话——这又是对计算过程的语言术语的一种回归。

        4
  •  0
  •   amit    15 年前

    看来唯一的原因是它与 modes mode errors .