.NET 重绘TabControl

    在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.Windows.Form
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: TabControl 是 Visual Basic .NET 中的一个控件,用于在应用程序中创建多个选项卡。MDI(Multiple Document Interface,多文档界面)是一种界面风格,允许在同一个应用程序窗口内打开和管理多个文档窗口。 在使用 TabControl 控件创建 MDI 界面时,可以将 TabControl 放置在 MDI 窗口的一个容器控件(如 Panel)中。每个选项卡代表一个文档窗口,可以在选项卡上放置其他控件,如文本框、按钮等。 使用 TabControl 控件的 MDI 界面的主要好处是可以在一个窗口中同时显示多个文档窗口,有助于提高用户体验和操作效率。用户可以通过点击选项卡来切换到不同的文档窗口,并在不同的选项卡上进行相应的操作。 为了实现 TabControl 的 MDI 功能,需要使用 TabPage 控件和 MdiClient 控件。 1. 在设计界面中添加一个 TabControl 控件,并设置其 Dock 属性为 Fill,将其放置在一个容器控件中。 2. 在代码中,使用 TabPage 控件创建并添加选项卡,每个选项卡对应一个文档窗口。 3. 使用 MdiClient 控件将容器控件设置为 MDI 窗口容器,通过设置其 Dock 属性为 Fill,并将其父容器设置为 TabPage 控件。 4. 在代码中,使用 New 关键字创建新的文档窗口,并使用 Show 方法将其显示在选中的选项卡中。 需要注意的是,在使用 TabControl 的 MDI 功能时,需要编写一些额外的代码来处理选项卡切换、文档窗口的打开与关闭等操作。可以通过事件、属性和方法来实现相应的功能。 综上所述,通过在 MDI 窗口中使用 TabControl 控件,可以方便地创建多个选项卡,并在一个窗口中管理和显示多个文档窗口。这样可以提高用户的操作效率和使用体验。 ### 回答2: 在VB.NET中,TabControl控件是一种常用的容器控件,用于在窗体上创建多个选项卡页,并且可以在这些选项卡页之间进行切换。而MDI(多文档界面)是一种界面风格,允许在单个父窗体上打开和管理多个子窗体。 在VB.NET中,可以将TabControl控件和MDI功能结合起来,为每个选项卡页创建一个子窗体,并在父窗体中显示这些子窗体。 首先,我们需要在VB.NET窗体中添加一个TabControl控件,创建多个选项卡页。然后,为每个选项卡页添加一个按钮或其他控件,用于打开对应的子窗体。当用户点击按钮时,通过实例化子窗体对象,并设置其父窗体属性为当前窗体,然后调用子窗体的Show方法,即可在父窗体中显示该子窗体。 同时,为了实现MDI效果,需要将父窗体的IsMdiContainer属性设置为True,将子窗体的MdiParent属性设置为父窗体对象。这样,子窗体就可以在父窗体中作为MDI子窗体进行管理,并可以使用父窗体的MDI功能,例如切换子窗体、最小化、最大化等。 总结起来,通过在VB.NET中使用TabControl控件和MDI功能,可以实现在单个父窗体中创建多个选项卡页,并且每个选项卡页对应一个子窗体的效果。这样的界面布局不仅可以提供更好的用户体验,还可以提高程序的可扩展性和灵活性。 ### 回答3: 在VB.Net中,TabControl和MDI(Multiple Document Interface)是两个常用的控件和界面布局模式。 TabControl是一种用于在同一窗体上显示多个选项卡页面的控件。通过在TabControl上添加多个TabPage,可以在不同的选项卡中放置不同的控件和内容。用户可以通过点击不同的选项卡来切换显示的内容。TabControl提供了一种方便的方式来组织和浏览复杂的数据和功能。 MDI是一种界面布局模式,允许在一个主窗体中同时显示多个子窗体。MDI界面通常用于管理和显示多个文档或任务,每个子窗体都可以独立操作,并且可以最大化、最小化和关闭。MDI界面的主要优势是提供了更好的多任务管理和操作效率。 在VB.Net中,可以将TabControl和MDI结合使用,实现在MDI界面中显示多个选项卡页面。首先,需要在主窗体中设置IsMdiContainer属性为True,以创建一个MDI容器。然后,可以将TabControl放置在MDI主窗体的某个位置,作为显示子窗体内容的区域。 接下来,可以在TabControl中添加多个TabPage,每个TabPage都可以作为一个独立的子窗体显示。在每个TabPage中,可以添加需要显示的控件和内容。在代码中,可以使用Form类来创建和管理子窗体对象,并将其设置为MDI主窗体的子窗体。 通过将TabControl和MDI结合使用,可以方便地管理和显示多个子窗体,并通过选项卡的方式在MDI界面中进行快速切换。这种布局方式可以提高用户的任务处理效率和界面可用性。 总之,VB.Net中的TabControl和MDI提供了一种灵活和高效的界面布局方式,可以在一个主窗体中同时显示多个选项卡页面,以便更好地管理和操作复杂的数据和功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值