《Visual C++ 6.0程序設(shè)計》課件第6章_第1頁
《Visual C++ 6.0程序設(shè)計》課件第6章_第2頁
《Visual C++ 6.0程序設(shè)計》課件第6章_第3頁
《Visual C++ 6.0程序設(shè)計》課件第6章_第4頁
《Visual C++ 6.0程序設(shè)計》課件第6章_第5頁
已閱讀5頁,還剩73頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第6章非客戶區(qū)界面設(shè)計6.1菜單6.2工具欄6.3狀態(tài)欄思考題

6.1菜單

6.1.1菜單簡介

幾乎所用的Windows應(yīng)用程序都使用菜單。菜單為用戶提供了操作應(yīng)用程序需要的命令,為用戶應(yīng)用程序中可操作命令的集合。菜單中的各個菜單項可以顯示單擊鼠標而產(chǎn)生的命令消息,從而提供一種用戶對程序控制的方式。

菜單分為兩類:一類是依附于框架窗口的一般菜單,包括主菜單和子菜單。主菜單是最高層的菜單,子菜單是從主菜單下拉出的菜單,無論主菜單和子菜單,其位置都是固定的;另一類是彈出式菜單,也稱為快捷菜單,為單擊鼠標右鍵后,在光標所在位置出現(xiàn)的浮動式菜單。菜單是Windows中的重要資源,它是一系列選項的列表,可以選中選項并產(chǎn)生一條消息傳遞給窗口。每個選項都有惟一的ID號,應(yīng)用程序加載菜單資源時,用其ID號作為標識。

大多數(shù)MFC應(yīng)用程序中,菜單與主框架窗口關(guān)聯(lián)。選中某一菜單項,系統(tǒng)將向主框架窗口傳遞WM_COMMAND消息。該消息按照下列順序傳遞給應(yīng)用程序中的命令目標對象:

●CmainFrame對象

●MDI主框架窗口

●MDI主框架窗口中的活動子框架窗口

●與MDI子框架窗口關(guān)聯(lián)的視對象

●與活動視關(guān)聯(lián)的文檔對象

●與文檔對象關(guān)聯(lián)的文檔模板

●CwinApp對象6.1.2CMenu類介紹

CMenu類是MFC專門為菜單設(shè)計的類,用于管理應(yīng)用程序窗口中的菜單。一般情況下不需要創(chuàng)建CMenu類對象,但如果希望在程序運行中動態(tài)地修改菜單(包括頂層菜單及其子菜單項),則可利用CWnd::GetMenu實現(xiàn)。該函數(shù)返回指向當前窗口菜單的臨時指針,通過該窗口菜單指針,可以調(diào)用Cmenu類的相關(guān)成員函數(shù)替換、修改、刪除。

Cmenu類的成員函數(shù)如表6-1所示。表6-1CMenu類屬性列表6.1.3菜單的操作

1.創(chuàng)建新菜單

(1)建立一個新的工程后,雙擊中的

,在右邊的編輯區(qū)中顯示應(yīng)用程序向?qū)Ы⒌牟藛钨Y源,如圖6-1所示。

(2)單擊空白虛框,輸入主菜單標題,菜單欄中會出現(xiàn)相應(yīng)名稱的菜單項,如圖6-2所示。

(3)在主菜單下拉菜單中的空白虛框處可以按照(2)繼續(xù)添加子菜單項,并為新的子菜單項添加ID號,便于后續(xù)消息處理函數(shù)的添加識別。圖6-1Menu文件夾及菜單編輯工作區(qū)圖6-2菜單項屬性對話框

2.添加消息處理函數(shù)

添加新的菜單資源后,應(yīng)該添加消息處理函數(shù)處理新菜單命令。其步驟如下:

(1)打開ClassWizard。

(2)選中MessageMaps標簽,從Classname組合框中選擇處理該菜單消息的類。

(3)在ObjectIds類表中選擇產(chǎn)生消息的對象,即菜單的ID號。即是在Messages列表框中自動顯示該菜單命令可能產(chǎn)生的所有消息。對菜單命令來說,只有兩個消息:COMMAND和UPDATE_COMMAND_UI,如圖6-3所示。

(4)在Messages列表框中選擇消息,然后單擊“AddFunction…”按鈕,增加消息處理函數(shù)。一般都是用ClassWizard提供的缺省函數(shù)名。

(5)單擊“確定”按鈕,關(guān)閉ClassWizard對話框,添加消息處理函數(shù)。圖6-3為菜單項添加消息

3.刪除菜單項

實際的應(yīng)用程序中,AppWizard生成的菜單項有時是多余的,比如“查看”菜單項,在商務(wù)信息系統(tǒng)、工業(yè)生產(chǎn)控制系統(tǒng)中,該項功能幾乎不會用到。考慮到實際應(yīng)用的需要,VisualC++中的菜單項允許用戶進行刪除。

刪除菜單項的方法很簡單,類似于Windows下的刪除操作:

(1)選中要刪除的菜單項(無論是主菜單還是下拉子菜單),單擊鼠標左鍵。

(2)點擊鼠標右鍵,在彈出的快捷菜單中選擇“剪切”即可;也可以選中要刪除的菜單項后,直接按下鍵盤“Delete”鍵,將菜單項刪除。

4.創(chuàng)建快捷菜單

右鍵點擊打開的菜單就是快捷菜單,快捷菜單多用于提供常用的操作命令,一般與已經(jīng)建立的諸多菜單項關(guān)聯(lián)。

創(chuàng)建快捷菜單一般采用動態(tài)方法,其步驟如下:

(1)為CmainFrame添加名為WM_CONTEXTMENU的消息。

(2)利用CMenu類成員函數(shù)CreateMenu創(chuàng)建空的彈出式菜單。

(3)調(diào)用函數(shù)AppendMenu在菜單中添加菜單項。6.1.4菜單操作實例

1.添加新菜單項

【例6-1】

編寫一個menu程序,為程序生成一個名為“顯示”的主菜單,其子菜單包括“激活”和“禁止”兩項。

操作步驟如下:

(1)創(chuàng)建應(yīng)用程序——利用AppWizard向?qū)В瑒?chuàng)建SDI應(yīng)用程序chap6_1。

(2)在項目工作區(qū)選項卡中,雙擊文件夾展開,再雙擊,在右邊的編輯區(qū)中顯示應(yīng)用程序向?qū)Ы⒌牟藛钨Y源,如圖6-4所示。圖6-4Menu文件夾及菜單編輯工作區(qū)這里,灰色虛框為新建菜單項位置,用鼠標選中并拖拽可將新菜單項放到相應(yīng)位置。

(3)單擊空白虛框,輸入主菜單標題“顯示”,如圖6-5所示,可以看到在菜單欄中出現(xiàn)了名為“顯示”的菜單項。

這里字符“&S”表示該菜單的快捷方式為Alt+S,并在快捷鍵“S”下添加下劃線。

菜單屬性說明如表6-2所示。圖6-5菜單項屬性對話框表6-2MenuItemProperties屬性說明

(4)選中新的空白虛框,輸入“顯示”,在復(fù)選框中選中“彈出”,表示此菜單項并非最底層菜單選項,如圖6-6所示。

菜單欄如圖6-7所示。

(5)選中新的空白虛框,輸入“顯示系統(tǒng)時間”,如圖6-8所示。

(6)在“顯示”菜單項下,添加“分隔符”,選中屬性中“分隔符”復(fù)選框,方法如圖6-9所示。圖6-6菜單屬性對話框圖6-7添加子菜單后菜單顯示圖6-8菜單屬性對話框圖6-9菜單屬性對話框

(7)在“分隔符”菜單項下添加“禁止”菜單項,快捷鍵為“Alt+P”,提示為“禁止菜單功能”。

(8)在“禁止”菜單項下增加“激活”菜單項,快捷鍵為“Alt+A”,提示為“激活菜單功能”。

請注意,在菜單中用鼠標左鍵雙擊新添加的子菜單項,在彈出的屬性窗口中的ID號為系統(tǒng)自動分配的ID號,為了便于尋找可將其修改為便于記憶的ID號。

系統(tǒng)自動分配的ID號如表6-3所示。

(9)運行該程序,可見應(yīng)用程序菜單如圖6-10所示。

需要注意的是,這里所有子菜單選項均為灰色,即無效狀態(tài)。要想對應(yīng)的子菜單處于有效狀態(tài),就要為相應(yīng)的菜單項添加消息處理函數(shù),即具體的操作功能。圖6-10建立菜單運行結(jié)果

2.刪除菜單項

【例6-2】

刪除例6-1的“查看”菜單項。

操作步驟如下:

(1)打開例6-1的工程文件。

(2)在項目工作區(qū)選項卡中,雙擊文件夾

展開,再雙擊。

(3)在右邊的編輯區(qū)中,選中“查看”主菜單,按下鍵盤上“Delete”鍵。

(4)系統(tǒng)彈出如下對話框,提示該操作將刪除主菜單包含的下拉子菜單及其命令行,如圖6-11所示。圖6-11刪除“查看”菜單項彈出對話框

(5)單擊“確定”按鈕,即可看見菜單欄中相關(guān)信息全部消失。

(6)運行該程序,“查看”主菜單被刪除,結(jié)果如圖6-12所示。圖6-12刪除菜單項運行結(jié)果

3.添加菜單消息處理函數(shù)

菜單是用戶操作命令的集合,在可視化編程中,點擊鼠標就意味著向Windows發(fā)送消息。對菜單的操作也應(yīng)該添加相應(yīng)的消息處理函數(shù)。

上例的程序運行中,用戶自定義的菜單項“顯示系統(tǒng)時間”為灰色,表示該項無效。要使菜單項有效,則必須為其添加相應(yīng)的消息處理函數(shù)。

【例6-3】

為例6-1添加命令處理函數(shù)。功能為選擇“激活”菜單項,子菜單項“顯示系統(tǒng)時間”為激活狀態(tài),選擇“禁止”菜單項,“顯示”菜單項中對應(yīng)子菜單項“顯示系統(tǒng)時間”為禁止(灰色)狀態(tài)。操作步驟如下:

(1)打開chap6_1的工程文件。

(2)在項目區(qū)中選中ClassView,選中,選中“CChap6_1Doc”,用鼠標右鍵單擊,在彈出快捷菜單中選擇“AddMemberVariable”項彈出“AddMemberVariable”對話框,添加一類型為“BOOL”,名稱為“status”,訪問權(quán)限為“Protected”的變量,用來識別“禁止”和“激活”狀態(tài)的按下情況。操作如圖6-13所示。圖6-13添加成員函數(shù)對話框需要指出的是,這里變量的訪問權(quán)限為“Protected”是因為訪問權(quán)限設(shè)置為在CChap6_1Doc中可見。status代表用戶選中菜單項的標識。status=true代表選擇了“激活”;status=false代表選擇了“禁止”。

(3)在項目區(qū)中,單擊前的符號,在最底部可以看到,系統(tǒng)已經(jīng)自動添加了一個保護型成員變量。

(4)選擇編輯窗口菜單欄項,在下拉菜單中選擇

子項,彈出“MFCClassWizard”對話框。

(5)選擇Classname項,在右邊的下拉菜單中,選中CChap6_1Doc,對不同的對象添加消息函數(shù),如表6-4所示。(6)為添加消息處理函數(shù)。

voidCChap6_1Doc::OnPrevent()

{

//TODO:Addyourcommandhandlercodehere

status=false;//選中"禁止",status值為false

UpdateAllViews(NULL);//通知所有的視圖文檔的改變

}

(7)添加消息處理函數(shù)。

voidCChap6_1Doc::OnActive()

{

//TODO:Addyourcommandhandlercodehere

status=true;//選中"激活",status值為true

UpdateAllViews(NULL);//通知所有的視圖文檔的改變

}(8)為添加消息處理函數(shù)。

voidCChap6_1Doc::OnUpdateShowtime(CCmdUI*pCmdUI)

{

//TODO:AddyourcommandupdateUIhandlercodehere

if(status==1)

pCmdUI->Enable(TRUE);

//如果選擇"激活"菜單項,"顯示系統(tǒng)時間"菜單項可見

else

pCmdUI->Enable(FALSE);

//如果選擇"禁止"菜單項,"顯示系統(tǒng)時間"菜單項不可見

}

(9)使用快捷鍵“Ctrl+F5”,運行程序,可以看到:選擇“禁止”菜單項,“顯示系統(tǒng)時間”菜單項為灰色禁用狀態(tài);選擇“激活”菜單項,“顯示系統(tǒng)時間”菜單項為黑色激活狀態(tài)。

4.創(chuàng)建彈出式菜單

【例6-4】

為例6-3添加快捷菜單。鼠標右鍵單擊客戶區(qū),在鼠標當前位置顯示快捷菜單。

操作步驟如下:

(1)打開chap6_3的工程文件。

(2)在菜單欄中,單擊菜單,在下拉菜單中選擇

子項。

(3)彈出“MFCClassWizard”對話框。

(4)在“Classname”中選擇“CMainFrame”;在“ObjectIds”中選擇“CMainFrame”;在“Messages”中選擇WM_CONTEXTMENU,雙擊,在“Memberfunctions”中出現(xiàn)“OnContextMenuON_WM_CONTEXTMEU”成員函數(shù)。

(5)為添加消息函數(shù)。

voidCMainFrame::OnContextMenu(CWnd*pWnd,CPointpoint)

{

//TODO:Addyourmessagehandlercodehere

CMenum_popmenu;//建立菜單類對象m_popmenu

if(m_popmenu.CreatePopupMenu())//創(chuàng)建彈出菜單

{

m_popmenu.AppendMenu(MF_STRING,ID_SHOWTIME,“

顯示(&S)");

//給對應(yīng)的ID添加彈出菜單項

m_popmenu.AppendMenu(MF_STRING,ID_PREVENT,“禁止(&P)”);

m_popmenu.AppendMenu(MF_STRING,ID_ACTIVE,“激活(&A)”);

}

m_popmenu.TrackPopupMenu(TPM_RIGHTBUTTON,point.x,point.y,this);

//跟蹤方式確定為鼠標右鍵單擊位置

}

這里,使用成員函數(shù)CMenu::TrackPopupMenu在指定位置顯示彈出菜單,并跟蹤用戶選擇的菜單項。其函數(shù)原型為:

BOOLTrackPopupMenu(UNITnFlags,intx,inty,CWnd*pWnd,LPCRECTlpRect=0);

形式參數(shù)說明:

①nFlages表示彈出菜單的顯示位置,其可選的參數(shù)如表6-5所示。②x,y值代表菜單的水平坐標和菜單頂端的垂直坐標。

③pWnd表示彈出菜單的窗口,如為當前窗口,該參數(shù)為this。

④lpRect是一個RECT結(jié)構(gòu)或CRect類的對象指針。它表示一個矩形區(qū)域,用戶單擊這個區(qū)域時,彈出菜單不消失;而當lpRect為NULL時,單擊菜單區(qū)域外,菜單會立即消失。

(6)運行程序,在客戶區(qū)任意位置單擊鼠標右鍵則出現(xiàn)彈出式菜單,選擇相應(yīng)菜單項即可獲得對應(yīng)的圖形輸出,如圖6-14所示。圖6-14添加彈出式菜單運行結(jié)果在程序的運行中,可以看到,當選中“禁止”彈出菜單項后,菜單欄“顯示/顯示/顯示系統(tǒng)時間”菜單項變灰;當選中“激活”彈出菜單項后,菜單欄“顯示/顯示/顯示系統(tǒng)時間”菜單項變黑。整個添加彈出菜單的過程中并未對任何成員函數(shù)進行修改,這是為什么呢?原因為,此例操作的第(5)步中,AppendMenu函數(shù)將彈出快捷菜單項與固定菜單項通過指定菜單項標識別符“ID_SHOWTIME”、“ID_PREVENT”和“ID_ACTIVE”聯(lián)系在一起,因此,在程序中盡管并未為新增加的快捷菜單項輸入消息函數(shù)代碼,但相同ID對應(yīng)的子菜單項具有相同的功能。

6.2工具欄

工具欄是一種窗口,往往作為使用頻率較高的菜單項的圖形化表示,放置在菜單欄下方,其排列的方式由程序設(shè)計的界面來決定。如Windows窗口中經(jīng)??吹降?,代表操作中常用的“新建”,“打開”和“保存”操作。工具欄是以圖標形式進行表示的,其圖標也對應(yīng)了操作功能,比較形象。相對于菜單而言,工具欄能提供更加直接和快捷的操作。

工具欄還具有工具提示功能,當用戶將鼠標停留在對應(yīng)工具按鈕上幾秒鐘,工具提示便會出現(xiàn)在工具欄按鈕上方的小文本框中。工具欄的添加,VisualC++中主要體現(xiàn)為繪制工具欄按鈕的位圖,該位圖作為BMP文件保存。工具欄位圖是一系列覆蓋工具欄按鈕的圖形,每個按鈕對應(yīng)一個圖形。在默認狀態(tài)下,每個圖形為16像素寬,15像素高。6.2.1向工具欄添加按鈕

向工具欄添加按鈕的步驟為:

(1)在項目區(qū)“ResourceView”下,展開“ToolBar”文件夾。

(2)雙擊下拉的“IDR_MAINFRAME”。

(3)在右邊出現(xiàn)的編輯區(qū)中選中空白工具欄按鈕。

(4)利用VC提供的繪圖和調(diào)色板工具繪制用戶自定義工具欄按鈕。

(5)編輯按鈕屬性,與菜單項ID號關(guān)聯(lián)。6.2.2工具欄操作實例

1.添加工具欄按鈕

【例6-5】

為例6-4添加工具欄。“激活”對應(yīng)工具欄按鈕;“禁止”對應(yīng)工具欄按鈕。

操作步驟如下:

(1)打開chap6_4的工程文件。

(2)工作區(qū)下,雙擊,展開文件夾。

(3)雙擊,右邊工作區(qū)出現(xiàn)菜單欄編輯區(qū)如圖6-15所示,編輯區(qū)中已經(jīng)包含系統(tǒng)框架默認的一些工具欄按鈕,添加新的按鈕,只需要在最后一個灰底空白工具欄按鈕處用鼠標單擊即可。圖6-15菜單欄編輯區(qū)

(4)單擊空白工具欄按鈕,利用右邊“圖形”和“色彩”工具欄提供的設(shè)計工具,繪制按鈕圖標。這里我們利用“圖形”工具欄繪制工具欄符號和?!皥D形”和“色彩”工具欄如圖6-16所示。圖6-16“圖形”工具欄和“色彩”工具欄

(5)運行程序,程序界面如圖6-17所示。

此時,在工具欄出現(xiàn)了繪制的工具欄按鈕圖標,但為灰色,表示不可用。需要為按鈕指定對應(yīng)的標識才能進行對應(yīng)的操作。

有時候工具欄上的按鈕,從功能上可以分為幾大類,為了進行區(qū)別,往往在不同的類別之間使用間隔符號進行功能隔離。為工具欄添加間隔的方法非常簡單,只需將空白工具欄按鈕用鼠標左鍵選中,并輕輕向右拖動一點,即為工具欄添加了一個間隔。圖6-17添加工具欄運行結(jié)果

2.為工具欄按鈕添加屬性

(1)雙擊工具欄按鈕,彈出工具欄按鈕屬性對話框,如圖6-18所示。圖6-18工具欄按鈕屬性對話框各屬性說明如表6-6所示。為了讓該工具欄按鈕具有與菜單項相同的功能,需要通過ID號將二者關(guān)聯(lián)起來。

(2)在ID下拉菜單中選擇需要和此工具欄按鈕關(guān)聯(lián)的菜單欄ID號,這里選擇“ID_ACTIVE”,如圖6-19所示。圖6-19工具欄按鈕屬性對話框

(3)采用同樣的方法,將和“ID_PREVENT”關(guān)聯(lián)起來。

(4)運行程序,可以看到,在工具欄上選中或按鈕,可以得到和菜單選項相同的操作結(jié)果。

在這里,對工具欄按鈕的禁止或激活操作與對菜單欄的操作方法相同,如果是對同一個ID號的操作,只需操作菜單欄或操作工具欄按鈕,無需重復(fù)操作,因為二者是通過同一個ID號進行關(guān)聯(lián)的。

6.3狀態(tài)欄

狀態(tài)欄位于

Windows窗口的底部,狀態(tài)欄既不接受用戶的輸入,也不產(chǎn)生命令消息,常常用于顯示某些提示信息。當用戶將鼠標移動到某個菜單項或工具欄按鈕上時,狀態(tài)欄中通常會顯示一些簡單的信息,提示用戶該選項可以做哪些操作。

狀態(tài)欄實際上是個窗口,一般分為幾個窗格,每個窗格顯示不同的信息。AppWizard會為應(yīng)用程序自動創(chuàng)建一個狀態(tài)欄。AppWizard產(chǎn)生的狀態(tài)欄各部分信息由indicator數(shù)組來表示,用戶可以在應(yīng)用程序主框架類(文件MainFrm.cpp中)找到,其原型為:staticUINTindicators[]=

{

ID_SEPARATOR,//statuslineindicator

ID_INDICATOR_CAPS,

ID_INDICATOR_NUM,

ID_INDICATOR_SCRL,

};

它們分別對應(yīng)狀態(tài)欄的4個部分,如圖6-20所示。圖6-20狀態(tài)欄介紹創(chuàng)建一個狀態(tài)欄需要以下幾個步驟:

(1)構(gòu)建一個CStatusBar對象。

(2)調(diào)用CStatusBar::Create創(chuàng)建狀態(tài)欄窗口。

(3)調(diào)用CStatusBar::SetIndicators函數(shù)分配窗格,并將狀態(tài)欄的每一個窗格與一個字符串ID相聯(lián)系。它的第一項一般為ID_SEPARATOR,該ID對應(yīng)的窗格用來顯示命令提示信息;后三項都是字符串ID,這三個字符串分別是CAP、NUM和SCRL,它們對應(yīng)的三個窗格用來顯示鍵盤的狀態(tài)。

1.修改應(yīng)用程序的狀態(tài)欄

對窗口狀態(tài)欄的結(jié)構(gòu)了解之后,我們來學(xué)習如何修改應(yīng)用程序的狀態(tài)欄,即對已有的窗格進行用戶自定義修改。

【例6-6】

為例6-5的狀態(tài)欄再加一個用戶選中狀態(tài)窗格,它將用來顯示用戶選中的“激活”或“禁止”操作名稱。

操作步驟如下:

(1)打開chap6_5工程文件。

(2)在項目區(qū)中選中,雙擊展開。

(3)選中文件夾,雙擊展開。

(4)選中,雙擊,光標移動到編輯區(qū),在其中找到indicators數(shù)組。輸入代碼:

staticUINTindicators[]=

{

ID_SEPARATOR,

//statuslineindicator

ID_INDICATOR_CHOICE,

//新增加一個窗格ID

ID_INDICATOR_CAPS,

ID_INDICATOR_NUM,

ID_INDICATOR_SCRL,

};

(5)回到項目區(qū),選中,雙擊文件夾。

(6)雙擊下拉菜單中的,右邊編輯區(qū)如圖6-21所示。圖6-21StringTable內(nèi)容

(7)單擊編輯區(qū)下端空白虛框處,按下鍵盤的“Insert”鍵,彈出“StringProperties”(字符串屬性)對話框,如圖6-22所示。

(8)在ID中不做選擇,在ID中將當前字符串刪除,在其中輸入“ID_INDICATOR_CHOICE”;在“標題”中輸入“選擇狀態(tài)”,為添加的新狀態(tài)欄窗格增加默認文本顯示;關(guān)閉對話框,如圖6-23所示。

(9)運行該程序,觀察應(yīng)用程序的狀態(tài)欄如圖6-24所示。圖6-22String屬性對話框圖6-23在String屬性對話框中輸入信息圖6-24在狀態(tài)欄新增了一個窗格“選擇圖形”

2.更新狀態(tài)欄窗格內(nèi)容

上例中,為狀態(tài)欄添加了一個新的窗格,只是在狀態(tài)欄上開辟了一塊空間,顯示默認的字符串,但狀態(tài)欄如果僅用于此就沒有多大的意義了。為了能在程序運行中,狀態(tài)欄顯示與鼠標操作相關(guān)的信息,有必要為該窗格添加消息處理函數(shù)。

【例6-7】

為例6-6的狀態(tài)欄添加消息處理函數(shù),當鼠標選中對應(yīng)的圖形子菜單或工具欄按鈕時,在新添窗格“選擇圖形”中顯示對應(yīng)圖形名稱。操作步驟如下:

(1)打開chap6_1的工程文件。

(2)在項目區(qū)中,單擊前的符號,展開CChap6_1View的成員,雙擊成員函數(shù),光標自動移動到該函數(shù)體起始位置。修改函數(shù)體:

voidCChap6_1View::OnDraw(CDC*pDC)

{

CChap6_1Doc*pDoc=GetDocument();

ASSERT_VALID(pDoc);

//TODO:adddrawcodefornativedatahere

CStatusBar*pS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論