畫筆使用(一)
1自定義畫筆
cpen類提供於產生畫筆的建構函式。其過載函式cpen(int npenstyle, int nwidth, colorref crcolor)可以生成乙個能夠指的線型、線寬和顏色的畫筆。下面的**生成乙個具有這樣性質的畫筆:實線,寬度為6,顏色為黑色。
cpen newpen(ps_solid, 6, rgb(0, 0, 0));
dc.selectobject(&newpen);
說明:在建立自定義畫筆後,需要使用
selectobject
函式將自定義的畫筆物件選入到裝置描述表中才能使用。
此外,cpen類提供用於產生畫筆的成員函式主要有兩個:createpen函式和createpenindirect函式。前者建立擁有指定型別、寬度和屬性的幾何或裝飾筆。用法如下:
bool createpen(int npenstyle, int nwidth,colorref, crcolor);
bool createpen(int npenstyle, int nwidth,const logbrush* plogbrush, int nstylecount = 0, const dword* lpstyle = null);
引數npenstyle:指定筆的風格,如實線、虛線;
引數nwidth:指定筆的線寬;
引數crcolor:指定筆的顏色;
引數lplogbrush:指向包含刷子資訊的logbrush結構的指標;
引數nstylecount:指向lpstyle陣列以雙位元組為單位的長度。如果npenstyle不是ps_userstyle,該引數必須設為1;
引數lpstyle:指向雙位元組陣列。第乙個陣列元素的第乙個單元指定第乙個使用者定義的實筆畫長度,第二個單元指定第乙個空畫筆的長度,一次類推。如果npenstyle不是ps_userstyle,則該引數必須設為null。
此外,createpenindirect函式建立擁有logpen結構所指定風格、顏色和樣式的畫筆,用法如下:
bool createpenindirect(lplogpen lplogpen);
其中,引數lplogpen指向lplogpen結構的指標。
2畫筆的使用
使用繪畫工具的一般步驟如下:
1建立畫刷和畫筆。如該繪圖工具已經初始化,則直接可調到第3步。
2對不能僅僅由建構函式來建立的繪圖工具,需要呼叫他們的成員函式來對其進行初始化。
3使用selectobject函式將自定義繪圖工具選入裝置描述表。用selectstockobject將庫繪圖工具選入裝置描述表。
4進行繪圖操作。
5將舊的gdi物件選會裝置描述表。如第1步中用new建立物件,使用完畢後應該用delete刪除該物件。
3使用畫筆劃線
1定義點的座標
2新增wm_lbuttondown訊息
3新增wm_lbuttonup訊息
執行結果:
在 C 中使用畫筆
出處 在 c 中使用畫筆 public class rectangle shape protected point m start protected point m end public rectangle point start,point end,color fgcolor m start s...
GDI 程式設計 二 使用畫筆
畫筆常用於繪製圖形的輪廓.gdi 的畫筆除了具有常見的色彩和寬度屬性外,還具有對齊方式,線帽,變換方式等屬性。gdi 中通過pen類來定義畫筆物件。一 構造與使用畫筆 pen brush,width 用顏色與線寬構造乙個畫筆 pen color,width 用畫刷與寬度構造乙個畫筆例子 pen pe...
GDI 程式設計 二 使用畫筆
畫筆常用於繪製圖形的輪廓.gdi 的畫筆除了具有常見的色彩和寬度屬性外,還具有對齊方式,線帽,變換方式等屬性。gdi 中通過pen類來定義畫筆物件。一 構造與使用畫筆 pen brush,width 用顏色與線寬構造乙個畫筆 pen color,width 用畫刷與寬度構造乙個畫筆 例子 pen p...