因為mvc架構,我們自己通過view去建立自己的模態(modal)等待對話方塊,比較難實現。
乙個比較可行的方法就是通過uialertview來實現。警告框,正好符合模態的要求。
(1)建立乙個警告框
_waitingdialog = [[[uialertview alloc] initwithtitle:nil
message:nslocalizedstring(@"please wait", @"titlecaptionwattingdialog")
delegate:self
cancelbuttontitle:nil
otherbuttontitles:nil] autorelease];
(2)建立乙個等待的uiactivityindicatorview
uiactivityindicatorview *activityindicator = [[uiactivityindicatorview alloc] initwithactivityindicatorstyle:uiactivityindicatorviewstylewhite];
[activityindicator setcenter:cgpointmake (132.0f, 60.0f)];
[activityindicator setactivityindicatorviewstyle:uiactivityindicatorviewstylewhitelarge];
[activityindicator startanimating];
(3)把建立的等待uiactivityindicatorview,設為警告框uialertview的subview.
[_waitingdialog addsubview:activityindicator];
[_waitingdialog show];
這樣乙個模態(modal)等待對話方塊就建立好了。
(4)何如關閉建立模態等待對話方塊
[_waitingdialog dismisswithclickedbuttonindex:0 animated:no];
附上事例程式原**,在snow leopard和leopard,sdk 3.0,3.1.3上測試通過。
MFC建立模態對話方塊和非模態對話方塊
以下主對話方塊類為 maindlg 一 建立模態對話方塊 1.在資源檢視裡插入dialog,對新建的對話方塊進行更改屬性新增需要的控制項等操作。2.在新建的對話方塊中右鍵新增類,新增新的對話方塊類cmodeldlg。3.在maindlg.h中包含modeldlg的標頭檔案 include cmode...
多執行緒建立模態進度條視窗
主窗體的類名為 cmodifyfiledlg 進度條窗體的類名為 cdlgprogress 進度條例項作為的 cdlgprogress 成員的變數名為 m progressctrl 型別為cprogressctrl 第一步 主窗體的按鈕事件響應。在主窗體的按鈕事件響應中宣告進度條視窗物件,呼叫其成員...
MFC筆記 建立模態對話方塊和非模態對話方塊
建立模態對話方塊 新建乙個對話方塊,對話方塊生成類。在要載入對話方塊的類前新增標頭檔案 生成模態對話方塊的地方 ctest ctrst ctest.domodal 建立非模態對話方塊 新建乙個對話方塊,生成類。要載入的對話方塊類新增成員變數 csweepfreq m sweepferq 類名,變數名...