⑴ MFC 單文檔添加自定義點陣圖工具欄圖標
MFC單文檔程序,在資源編輯器中只有一個已有的toolbar資源,你只需要在資源編輯器里版面,通過「空位」建立權一個按鈕圖標(通過繪制或者復制)並加工好,然後選中這個工具條按鈕,右鍵屬性,給予它一個ID就可以使用了。
ID最好是先建立菜單項的方式給予,這樣方便建立提示說明等文字。
工具條按鈕,不需要SetButton方法,這個是對話框按鈕控制項的方式,而不是工具條按鈕。
⑵ MFC 自繪工具欄
ass Wizard,然後彈出對話框你就可以在右側Messages里點選command,再點擊添加函數按鈕就行了。工具欄的圖標只要它的ID和對應的菜單項ID一樣就行了。
23、初始化函數是CView的派生類的PreCreateWindow,畫圖就在OnDraw,OnDraw是在窗口發生變化時重繪,但初始化要畫圖的話我都是在OnDraw里做的,可以用一個static變數決定,不知道有沒有別的辦法。
4、手動繪制我覺得也應該在OnDraw里,因為我做基於對話框的時候發現在OnPaint里才一定能能畫成功,其他地方不一定能畫成功。但視圖裡面沒試過,可以添加一個事件,在事件函數里使用CDC畫畫看,可能可以。
5、這幾個是列印的吧,我沒列印機,所以從沒使用過,做基於文檔/視圖的時候都是把這幾個刪掉的
6、工程剛創建的時候用的打開和保存都是使用CWinApp的OnFileNew和OnFileOpen函數,在App類的cpp文件中可以看到下面代碼
ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
我們要做的就是重載這兩個函數,使用文件對話框,你在網上再查查文件對話框就知道怎麼用了。
希望能對你有幫助吧,我學的不深,基本做的都是基於對話框的,基於文檔/視圖的項目做的很少,因為基本上用不到。
⑶ mfc 在對話框中添加工具欄,如何操作實現
在頭文件實例化CToolBar m_toolbar;
if (! m_toolbar.CreateEx( this,TBSTYLE_FLAT , WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS,
CRect(2,2,0,0)) || ! m_toolbar.LoadToolBar(「你的工具欄ID」) )
{
TRACE0("failed to create toolbar\n");
return FALSE;
}
m_toolbar.ShowWindow(SW_SHOW);
RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);
⑷ MFC怎麼用VS2013給工具欄畫圖標
MFC自帶的繪圖函數有圓形 矩形 圓角矩形 橢圓
好像沒有五角星,不過你可以自定義一個函數內
截取point A和point B 在兩點組成的容區域內,用數學幾何方法求出五個點的坐標,
然後畫五條直線.
幾何求點的思路:
角度 int A[]={90,90+72*1,90+72*2,90+72*3,90+72*4};
Point[i].x=R*cos(A[i]);
Point[i].y=R*sin(A[i]);
半徑R的演算法:
R=rect.Width()>rect.Height()?rect.Width():rect.Height();
當用戶點擊一個工具欄圖標時,你要把圖標的類型記錄到Frame的成員變數中
在LButtonDown和LButtonUp的事件中截獲兩點的坐標
再根據用戶選擇的工具欄圖標類型,在區域內繪制相應的圖案