在www.codeproject.com 看到一个关于重绘tabControl的例了,觉得挺有意思的。照着修改一下,有一些东西自己并没有去改,使得代码很短,同时也有一些功能并没实现的。具休可到http://www.codeproject.com/KB/tabs/flattabcontrol.aspx。
我实现的效果如图:
代码实现
主要是对TabControl实现的重绘,可以通过继承TabControl来重绘。
基本上没什么难度,有兴趣可以试着写一下。
vb.net 代码如下:
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Collections
Imports System.ComponentModel
Imports System.Collections.Generic
Public Class FlatControl
Sub New()
' 此调用是 Windows 窗体设计器所必需的。
InitializeComponent()
' 在 InitializeComponent() 调用之后添加任何初始化。
SetStyle(ControlStyles.AllPaintingInWmPaint, True)
SetStyle(ControlStyles.OptimizedDoubleBuffer, True)
SetStyle(ControlStyles.StandardDoubleClick, True)
SetStyle(ControlStyles.ResizeRedraw, True)
SetStyle(ControlStyles.UserPaint, True)
End Sub
Protected Overrides Sub OnPaint(ByVal e As System.Wi

本文介绍了一种在.NET环境下通过继承TabControl类并重绘来改变其外观的方法。作者参考了CodeProject上的示例代码,并进行了简化,虽然未实现所有功能,但展示了基本的重绘思路。示例提供了VB.NET的代码实现,帮助读者理解如何自定义TabControl的视觉样式。


被折叠的 条评论
为什么被折叠?



