带叉叉按钮的Tab页


由于项目的需要,要有一个像Firefox那样的有叉叉按钮的TABPAGE
花了一上午时间,给画了一个
主要理清三种情况

1:当前项的叉叉按钮
2:非当前项的叉叉按钮
3:鼠标移动时的叉叉按钮等咋表现出来

其次就是GDI+一般注意的位置问题
每个叉叉的相对位置

 e.Graphics.FillRectangle(_brush, tabTextArea.X + tabTextArea.Width - 22, 4, tabTextArea.Height - 3, tabTextArea.Height - 3);

这一句是画叉叉按钮下面那个红红的背景,而tabTextArea=(RectangleF)this.GetTabRect(i); i为TAB页的索引号

这几个问题理清了,剩下就是画叉叉的问题了
画过的人都知道,其实就是小学一条定理,两点确定一条直线
然后,就画喽
 using (Pen pen = new Pen(Color.White, 2))
   {
         e.Graphics.DrawLine(pen, tabTextArea.X + tabTextArea.Width - 18, 7, tabTextArea.X + tabTextArea.Width -11, 15);
          e.Graphics.DrawLine(pen, tabTextArea.X + tabTextArea.Width - 18, 15, tabTextArea.X + tabTextArea.Width -11, 7);
  }

剩下也就没什么了
就是把其他状态用不同颜色画画画出来喽

贴一张图
 


有没看出第二个叉叉的颜色比较深,是因为选中的效果,嘿嘿

至于代码嘛!还没整理,还有一个原因就是不会搞链接与上传文件,改天学会了再上传哦,贴两张图都好麻烦啊!不过也因为我是一个专业的看贴很少回贴的人啦

嘿嘿!希望以后在博客园多加油,有什么意见或者想法可与我沟通哦

一起无聊做一些控件出来,嘿嘿!

加油
MSN:yellowyu2004@hotmail.com

有空再把做过的一些小控件放出来大家一块分享,希望能与大家,特别是喜欢做界面控件的同学交流,谢谢!

还有一点就是,在Codeproject就有一个例子了,我也是参考那个得来的,那个功能更强,嘿嘿

我就贴那个链接吧,哈哈

http://www.codeproject.com/kb/tabs/firefoxtabcontrol.aspx



posted @ 2008-03-06 12:11 yellowyu 阅读(516) 评论(4)  编辑 收藏 所属分类: 无聊做做小控件

  回复  引用  查看    
#1楼 2008-03-07 17:34 | good man      
我也喜欢这个开发,但是我基础不是很好,你哪里有没有什么基础的东西哟
我的QQ:399858803加我,我们一起学习共同进步;
  回复  引用  查看    
#2楼 [楼主]2008-03-09 15:33 | yellowyu      
@good man
改天再贴几个小控件,我不上QQ的,很少,MSN就是上面那个,嘿嘿!谢谢,没关系,主要还是从CODEPROJECT上学
  回复  引用  查看    
#3楼 2008-06-27 09:15 | Simens      
我也想学自己做控件,多指教啊!
  回复  引用  查看    
#4楼 2008-07-06 16:02 | san2046      
做組件..哈哈..
控件調用的時候感覺沒那個方便額...


标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      


相关链接:

所属分类的其他文章:
透明的LISTVIEW
带叉叉按钮的Tab页