共用方式為


IOperationsProgressDialog::StartProgressDialog 方法 (shobjidl_core.h)

啟動指定的進度對話框。

語法

HRESULT StartProgressDialog(
  [in] HWND       hwndOwner,
  [in] OPPROGDLGF flags
);

參數

[in] hwndOwner

類型: HWND

父視窗的句柄。

[in] flags

類型: DWORD

自訂作業的旗標。 請注意,這些旗標會在Shlobj.h中宣告。 下列值的組合:

PROGDLG_NORMAL (0x00000000)

預設、一般進度對話框行為。

PROGDLG_MODAL (0x00000001)

對話框會強制回應其 hwndOwner。 默認設定為無模式。

PROGDLG_AUTOTIME (0x00000002)

以剩餘的時間更新 「Line3」 文字。 此旗標不需要隱含設定,因為 IOperationsProgressDialog::StartProgressDialog 所啟動的進度對話框會自動顯示剩餘的時間。

PROGDLG_NOTIME (0x00000004)

不要顯示剩餘的時間。 不建議透過 IOperationsProgressDialog 來設定此旗標,因為它會違反對話框的目的。

PROGDLG_NOMINIMIZE (0x00000008)

不要顯示最小化按鈕。

PROGDLG_NOPROGRESSBAR (0x00000010)

不要顯示進度列。

PROGDLG_MARQUEEPROGRESS (0x00000020)

這個旗標在此方法中無效。 若要將進度列設定為 marquee 模式,請使用 IOperationsProgressDialog::SetMode 中的旗標。

PROGDLG_NOCANCEL (0x00000040)

請勿顯示取消按鈕,因為無法取消作業。 只有在絕對必要時,才使用此值。

OPPROGDLG_DEFAULT (0x00000000)

Windows 7 和更新版本。 表示預設的正常作業進度對話框行為。

OPPROGDLG_ENABLEPAUSE (0x00000080)

顯示暫停按鈕。 只有在作業可以暫停的情況下,才使用此功能。

OPPROGDLG_ALLOWUNDO (0x00000100)

作業可以透過對話框復原。 [ 停止] 按鈕會變成 [復原]。 如果按下,則 [ 復原] 按鈕會還原為 [停止]。

OPPROGDLG_DONTDISPLAYSOURCEPATH (0x00000200)

請勿在進度對話框中顯示原始程式檔的路徑。

OPPROGDLG_DONTDISPLAYDESTPATH (0x00000400)

請勿在進度對話框中顯示目的地檔案的路徑。

OPPROGDLG_NOMULTIDAYESTIMATES (0x00000800)

Windows 7 和更新版本。 如果預估完成時間大於一天,請勿顯示時間。

OPPROGDLG_DONTDISPLAYLOCATIONS (0x00001000)

Windows 7 和更新版本。 請勿在進度對話框中顯示位置行。

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

進度對話框應該建立在與對話框所報告檔案作業不同的線程上。 如果對話框在與檔案作業相同的線程中執行,則進度訊息最好只傳送為資源允許。 與檔案作業相同線程上的進度訊息可能完全不會傳送。

呼叫 IOperationsProgressDialog::StartProgressDialog 之後,IProgressDialogIActionProgressDialogIActionProgress 就無法存取CLSID_ProgressDialog對象的實例。 雖然 QueryInterface 可以用來存取這些介面,但大部分的方法都無法叫用。 IOperationsProgressDialog 是用來顯示 Windows Vista 和更新版本作業引擎之新進度對話框的介面。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 shobjidl_core.h (包含 Shobjidl.h)