第11節(1 / 3)

nt.x,point.y);

//((CMainFrame*)GetParent())->m_wndStatusBar.SetWindowText(str);

//((CMainFrame*)GetParent())->SetMessageText(str);

//((CMainFrame*)GetParent())->GetMessageBar()->SetWindowText(str);

GetParent()->GetDescendantWindow(AFX_IDW_STATUS_BAR)->SetWindowText(str);

7.加入啟動畫麵

Project-Component and ->Visual C Components->SplashScreen->插入

Lesson10: 繪圖控製

1. 畫圖:

a.創建四個菜單,為其添加消息響應;

b.在View中添加m_DrawType,保存繪畫類型;

c.增加成員變量,m_PtOrigin,當按下鼠標左鍵時,保存此點;

d.在OnLButtonUp中畫點,線,矩形,橢圓,別忘記設置成透明畫刷

2. 為其添加一個設置對話框(線型和線寬)

a.創建對話框,為其創建一個新類關聯它;

b.為其中的線寬關聯成員變量;

c.在View中增加一個菜單,響應新的對話框;

d.添加線型選項設置,將其Group屬性選中,並為單選按紐關聯成員變量。在view中增加一個線型變量m_nLineStyle

3 .添加一個顏色對話框

a.實例化一個CColorDialog

b.調用DoModal方法

4. 添加字體對話框,將選擇的字體在View中顯示出來。

a.實例化一個對象;

b.為View添加一個字體成員變量,得到用戶選擇的字體。

c.調用Invadate()發出重繪消息;

d.再次注意一個對象隻能創建一次,故要再次創建,必須將原告的刪除!

5. 為設置對話框增加示例功能。

a.當控件內容改變時,發出En_change消息。而Radio按紐則為Clicked。需先UpdateData()。另外還需要ScreenToClient(&rect)

6. 改變對話框的背景色和控件顏色。

每個控件被繪製時都發出WM_CTlColor消息,

7. 如何改變OK按紐的字體和背景?

OK按紐

a.創建一個新類,CTestBtn,基類為CButton

b.在類中增加虛函數,DrawItem,添加代碼。

c.將OK按紐關聯成員變量。類型為CTestBtn,注意將OK按紐的OwnerDraw特性選中。

Cancel按紐

用新類來改變。

a.加入新文件。

b.為Cancel關聯一個成員變量,類型為CSXBtn;

c.調用CSXBtn的方法。

Cancel2按紐