想把button画成个椭圆,然后在有渐变,给段完整代码,能用的话给全分!!

解决方案 »

  1.   

    最简单的方法是不用button,而是用picturebox的click来替代,你可以找个圆的图片,然后把背景色调好后,从视觉上就是圆型效果了。
      

  2.   

    可以用picturebox的click来替代也可以用css样式来做
      

  3.   


    ====================================================我的是vs2005 要做的是winfrom,想用重画方法实现按牛的变形
    =====================================================
      

  4.   

    ding ing............................
      

  5.   

    用Region请参考
    http://www.codeproject.com/csharp/bmprgnform.asp?target=region
      

  6.   

    用CSS是正确的,在不同的时间间隔,调用不同的CSS,直接在HTML里面写Javascript就行了。刷都不用刷.
      

  7.   

    用Button.Region   
      基本所有的组件都有Region属性.   
      先用你需要的形状构造一个Region对象,然后再把这个对象赋给.Region属性.   
      要恢复原来的形状,将.Region属性设为null.
      

  8.   

    to :lovefootball(蟑螂(生活就是扯淡--做人要放低姿态)) 
        jijl2001(jijl2001)想问一下为什么不用onpaint方法,因为最近在学重绘看很多都用onpaint()。。
      

  9.   

    重写paint
                Graphics g;
                if (e == null)
                    g = Graphics.FromHwnd(this.Handle);
                else
                    g = e.Graphics;
    ...
      

  10.   

    改变控件的形状就用Control.Region.
    绘制控件就用OnPaint或Paint事件比如如下代码把一个控件外观做成一个椭圆:
    GraphicsPath path = new GraphicsPath();
    path.AddEllipse(Control.ClientRectangle);
    Control.Region = new Region(path);绘制渐变一般用LinearGradientBrush或其它.
      

  11.   

    如:
    LinearGradientBrush bdBrush = new LinearGradientBrush(rect, Color1,Color2, LinearGradientMode.Vertical);
    Graphics.FillRectangle(bdBrush, rect);
      

  12.   

    请hbxtlhx(平民百姓)到这里领一下分,http://community.csdn.net/Expert/topic/5265/5265207.xml?temp=.8721887因为其他人的也很有建议性,所以都要给分的,特意另给您开了一贴,麻烦您去回一下。我将把分给您结了。