幫助C 菜鳥進入GDI 開發

2021-09-30 02:31:53 字數 1809 閱讀 1327

前一階段看到很多網友提問關於設計一些樣式獨特的按鈕,或者要在一些控制項上做出一

些圖示之類的

東西的問題,往往得到的答覆就是一句「用gdi+」那麼什麼叫做gdi+呢?如何應用gdi+

呢?今天給大家

做乙個小例子,希望對大家有幫助:

1 gdi+的定義:graphicdevice inte***ce plus 就是圖形裝置介面,我們通過這個借

口可以對控制項進行

一些設計,。

2 乙個小例子:如何用gdi+來修改乙個按鈕的樣式:

第一步,我們要建立乙個類——button_paint,這個類就是我們以後要用的,我們自己

設計的按鈕。

第二步,我們需要引用兩個元件進來:

乙個是 system.drawing.dll,這個是gdi+所需要的元件。

另外乙個是 system.windows.forms.dll ,我們需要這個元件,來重寫裡邊的按鈕對

象。第三步,現在開始進入編寫**,首先要做的是把剛才引用的元件調入我們的程式:

using system.drawing;

using system.windows.forms;

然後我們要在這裡類裡邊繼承原始的button物件,以便於對這個物件進行重寫,**如

下:public class button_paint:system.windows.forms.button

然後在這個函式的進入點 public button_paint()裡邊加入乙個**,

就是讓這個類被呼叫的時候,當執行影象生成部分this.paint的時候自動啟用

我們自己所設計的這個方法button_paint:

this.paint+=new system.windows.forms.painteventhandler(button_paint);

然後我們寫一下button_paint這個方法,把這個繪畫的**傳入這個方法,

後邊邊開始就是正規的gdi+程式設計了。

private void button_paint(object sende,system.windows.forms.painteventargs

e)在button_paint 這個方法裡邊,我們可以給這個按鈕加入一些簡單的圖形修飾,方法

如下:首先我們定義一根畫筆,我們需要用它來進行影象的繪畫,這根畫筆我們用紅色吧:

pen pen=new pen(color.red);

然後定義畫筆的寬度:

pen.width=8;

好的,我們現在開始畫了,操作的物件自然就是我們傳遞進來的這個需要修飾的物件 e

讓我們先畫條直線:

e.graphics.drawline(pen,7,4,7,this.height-4);

這個沒有必要多解釋了吧?

然後再劃乙個橢圓

e.graphics.drawellipse(pen,this.width-16,6,8,8);

然後把這個類編譯好,然後引用到我們的應用程式中呼叫吧,這時候就可以看到我們涉

及的這個物件的效果了。

具體的我做的這個例子的**如下:

using system;

using system.drawing;

using system.windows.forms;

namespace button_paint

private void button_paint(object sende,system.windows.forms.painteventargse)}

}我的個人**:

www.yt-e.com

www.cha8.com

www.1liao.com 老k

幫助C 菜鳥進入SQL XML開發

xml是個什麼玩意?很多朋友都有一大堆的理論知識,但是如何實際的應用到開發中去 似乎還是乙個不小的問題。今天給剛剛接觸的初學者乙個小例子,希望可以幫助那些剛剛接觸的朋友快速的 理解和使用xml。首先,說一下我們的例子目的 一讓資料庫輸出xml,並且在.net體系下呼叫出來。這個系統的資料層是用sql...

程式設計小菜鳥求幫助

試著改編乙個fftw的傅利葉程式,但是老是出問題,希望有懂的的大神幫忙看哈 指出怎麼改!include fftw3.h include include include include include const int n 4240 const double pi 3.1416 const doub...

cmd進入後,help回車出現幫助資訊

c windows system32 help 有關某個命令的詳細資訊,請鍵入 help 命令名 assoc 顯示或修改副檔名關聯。attrib 顯示或更改檔案屬性。break 設定或清除擴充套件式 ctrl c 檢查。bcdedit 設定啟動資料庫中的屬性以控制啟動載入。cacls 顯示或修改檔案...