檢視原始碼 wxProgressDialog (wx v2.4.3)

如果平台支援,此類別將提供平台的原生進度對話框,否則它將只是 wxGenericProgressDialog(在 wx 中未實現)。

此類別繼承自,並可使用以下類別的函式:

wxWidgets 文件:wxProgressDialog

摘要

函式

銷毀物件

可在使用者點擊「中止」按鈕後,用來繼續對話框。

更新對話框,將進度條設定為新值,並在指定新訊息時更新訊息。

型別

-type wxProgressDialog() :: wx:wx_object().

函式

-spec destroy(This :: wxProgressDialog()) -> ok.

銷毀物件

-spec new(Title, Message) -> wxProgressDialog()
             when Title :: unicode:chardata(), Message :: unicode:chardata().

等同於 new(Title, Message, [])

此函式的連結

new(Title, Message, Options)

檢視原始碼
-spec new(Title, Message, [Option]) -> wxProgressDialog()
             when
                 Title :: unicode:chardata(),
                 Message :: unicode:chardata(),
                 Option :: {maximum, integer()} | {parent, wxWindow:wxWindow()} | {style, integer()}.
-spec resume(This) -> ok when This :: wxProgressDialog().

可在使用者點擊「中止」按鈕後,用來繼續對話框。

-spec update(This, Value) -> boolean() when This :: wxProgressDialog(), Value :: integer().

等同於 update(This, Value, [])

-spec update(This, Value, [Option]) -> boolean()
                when
                    This :: wxProgressDialog(),
                    Value :: integer(),
                    Option :: {newmsg, unicode:chardata()}.

更新對話框,將進度條設定為新值,並在指定新訊息時更新訊息。

傳回 true,除非已按下「取消」按鈕。

如果傳回 false,應用程式可以立即銷毀對話框,或詢問使用者是否確認中止,如果未確認中止,則可以使用 resume/1 函式恢復對話框。

如果 value 是對話框的最大值,則函式的行為取決於建立對話框時是否使用了 wxPD_AUTO_HIDE。如果使用了,則對話框會隱藏,且函式會立即返回。如果沒有使用,則對話框會變成模態對話框,並等待使用者關閉它,這表示此函式會等到發生這種情況才會返回。

請注意,如果 newmsg 比目前顯示的訊息長,則對話框會自動加寬以適應它。但是,如果新訊息比之前的訊息短,則對話框不會縮小回來,以避免訊息經常變更時不斷調整大小。若要執行此操作並使對話框適合其目前內容,您可以明確呼叫 wxWindow:fit/1。但是,此類別的原生 MSW 實作如果新文字的行數少於舊文字,則會使對話框變短,因此建議保持文字的行數不變,以避免對話框大小發生劇烈變化。您可能也希望使建立對話框時指定的初始訊息足夠寬,以避免稍後必須調整對話框大小,例如在其中附加一長串不可斷開的空格 (wxString(在 wx 中未實作)(L'\u00a0', 100))。