1. 程式人生 > >漂亮的C#點陣圖按鈕設計

漂亮的C#點陣圖按鈕設計

在C#程式設計中,提供了最基本的窗體設計,如果運用到商業化的產品中,顯得呆板無趣,也沒有個性,如果要設計商業化的產品,讓自己的產品有特點,讓自己的軟體有個性,按鈕是需要人性化的操作,好的介面離不開定製化的點陣圖按鈕。

在C#中增加一個類ExButton,這個類的基類為Button,按鈕通常有四種狀態:正常、禁止、獲得焦點、按鈕,這四種狀態的確立需要與滑鼠的動作結合起來。在該類中,需要過載OnMouseEnter()、OnMouseLeave()、OnMouseDown()、OnMouseUp(),利用過載的滑鼠事件確定按鈕的各種狀態。

protectedoverridevoid OnMouseEnter(

EventArgs e)

{

this.SetStatus(ButtonStatus.Hover);

base.OnMouseEnter(e);

}

protectedoverridevoid OnMouseLeave(EventArgs e)

{

this.SetStatus(ButtonStatus.Normal);

base.OnMouseLeave(e);

}

protectedoverridevoid OnMouseDown(MouseEventArgs mevent)

{

if (mevent.Button == System.Windows.Forms.MouseButtons.Left)

{

this.SetStatus(

ButtonStatus.Press);

}

base.OnMouseDown(mevent);

}

protectedoverridevoid OnMouseUp(MouseEventArgs mevent)

{

if (mevent.Button == System.Windows.Forms.MouseButtons.Left)

{

this.SetStatus(ButtonStatus.Normal);

}

base.OnMouseUp(mevent);

}

最後過載一下OnPaint()函式,按照按鈕的各種狀態繪製不同的按鈕影象,當然,這裡是發揮的天堂,本文的繪製方法僅供參考。