Dialog

Dialog是application modal的,意味着如果没有结束这个Dialog,那用户将无法对这个application做任何操作。

 

Sheets

Sheets是document modal的,意味着如果没有结束这个sheet,那用户将无法对这个Document或者这个window进行任何操作。

什么是啥使用Sheets:

  1. 需要一个针对某个document的特定dialog时,比如saving, printing。Cocoa的NSSavePanel和NSPrintPanel将其自身present为sheets。
  2. 某个不创建document的单窗口应用需要一个dialog时,一个单窗口程序可能会用sheet来请求用户接受licence agreement。
  3. 其他特定window相关的dialogs

 

 

Reference:

Sheets: https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Sheets/Concepts/AboutSheets.html#//apple_ref/doc/uid/20001043-BABFIBIA

 

 

Sheets