我想創建一個對話窗口,用戶可以在其中執行各種任務,並希望他通過用鼠標單擊Cancel按鈕(即不按Enter)從對話框返回。因此我不想使用CreateDialog。但是,通過CreateWindow創建一個不太明確的對話框窗口,所有字符串都顯示爲未格式化。對話框操作
expr = Column[{
[email protected]{"set variable to: ", InputField["value", String]},
"Try to hit Enter in any of the dialogs: it closes #2 but not #1.",
CancelButton[]
}];
CreateWindow[DialogNotebook[expr], WindowSize -> All, WindowMargins -> {{100, Automatic}, {Automatic, Automatic}}, WindowTitle -> "1. CreateWindow & DialogNotebook"];
CreateDialog[expr, WindowTitle -> "2. CreateDialog"];
有沒有什麼聰明的辦法有第二對話窗口的外觀,但第一個的按鈕的行爲?當然,expr
這裏是一個簡單的例子,但它在現實中可能相當複雜,因此它不可能將每個字符串包裝到Cell[string, "Text"]
中,而將每個其他表達式包裝到一些不太明確的boxform中。
「取消」按鈕通常用於取消(即忽略)您的輸入... –