15.C#编程学习——checkbox

15.C#编程学习——checkbox

源码如下:

usingSystem;

usingSystem.Drawing;

usingSystem.Windows.Forms;

 

classCheckBoxDemo : Form

{

    publicstaticvoid Main()

    {

        Application.Run(newCheckBoxDemo());

    }

    public CheckBoxDemo()

    {

        Text = "CheckBox Demo";

 

        CheckBox[] achkbox = newCheckBox[4];

        int cyText = Font.Height;

        int cxText = cyText / 2;

        string[] astrText = { "Bold", "Italic","Underline", "Strikeout" };

 

        for (int i = 0; i < 4; i++)

        {

            achkbox[i] = newCheckBox();

            achkbox[i].Text = astrText[i];

            achkbox[i].Location = newPoint(2* cxText,

                                            (4+ 3 * i) * cyText / 2);

            achkbox[i].Size = newSize(12* cxText, cyText);

            achkbox[i].CheckedChanged +=

                           newEventHandler(CheckBoxOnCheckedChanged);

        }

        Controls.AddRange(achkbox);

    }

    void CheckBoxOnCheckedChanged(objectobj, EventArgsea)

    {

        Invalidate(false);

    }

    protectedoverridevoid OnPaint(PaintEventArgs pea)

    {

        Graphics grfx = pea.Graphics;

        FontStyle fs = 0;

        FontStyle[] afs = { FontStyle.Bold,     FontStyle.Italic,

                               FontStyle.Underline, FontStyle.Strikeout };

 

        for (int i = 0; i < 4; i++)

            if (((CheckBox)Controls[i]).Checked)

                fs |= afs[i];

 

        Font font = newFont(Font, fs);

        grfx.DrawString(Text, font, newSolidBrush(ForeColor), 0, 0);

    }

}

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值