网站首页 工具软件 操作系统 办公软件 网页制作 PHP教程 script脚本专栏 photoshop教程 其他精品教程
我发布的文章 - 教程搜索 - 交流论坛 - 帮助中心 - 网站首页 网络工具 - 常用工具 - 媒体工具 - 系统工具 - 实用工具 NT/2003 - Win Xp - Win2000 - DOS/Win9x - IE/注册表 - Linux - 苹 果 Office - Word - Excel - PowerPoint - 输入法 - 邮件处理 Flash - Dreamweaver - Fireworks - FrontPage - HTMLCSS 基础文章 - PHP函数 - PHP技巧 - 数据库相关 - 高级应用 - PHP安装 - 转载精华 - 常见问题 综 合 类 - 状 态 栏 - 游 戏 类 - 页面背景 - 页面特效 - 页面导航 - 文本操作 - 文本特效 - 图形特效 - 鼠标特效 - 时间日期 - 密 码 类 文字特效 - 按钮与图标 - 色彩运用 - 滤镜魔法 - 综合实例 XML教程 - DELPHI基础教程 - VB教程
首页 -> 其他精品教程 -> VB教程

TOP

VB.NET编程之透明窗体篇 (1)
文章内容
相关信息
用户评论
文章内容


虽然VB.NET和VB在语法上有很多相同之处,但从根本上说,VB.NET不仅仅是VB的另外一个升级版本,而是一个全新的语言。VB.NET全面支持面向对象,在VB.NET中哪怕是一个字符串,你也都可以把它看成是一个对象,一个实例,也有自己的属性和方法。同样VB.NET中程序窗体(Form)也是一个实例,它是由命名空间“System.Windows.Forms”中的“Form”类通过构造函数而成的一个实例。下面试着用VB.NET来编写与窗体相关的程序。

利用VB.NET来定制窗体的透明度


在下面介绍的程序中,将通过调整TrackBar组件的数值来调整窗体的透明程度。定制透明的窗体,如果要用其他语言来实现,一定是件很复杂的工作,但对于VB.NET来说,则是一件非常简单的事情,这是因为在.Net FrameWork SDK的“Form”类中,提供了一个可以设定窗体透明度的属性“Opacity”,当“Opacity”属性值为“1”,说明窗体不透明,当“Opacity”为“0”,则窗体完全透明。

构造整个程序的主要思路就是:首先要继承一个Form对象,程序中名称为Form1,然后创建一个TrackBar组件和一个Label组件,并进行初始化,Label组件的名称为Label1,主要是显示当前窗体的透明度数值。接着定义各组件相关事件,程序中只有一个TrackBar1的“Scroll”事件,并在Form1中加入这些可视组件,这样组件才能显示出来。最后提供VB.NET的程序入口函数“Main”来运行这个程序。下面在VB.NET中通过TrackBar1来定制窗体透明度的完整程序代码(Form.vb):

Imports System.Drawing
Imports System.Windows.Forms
Imports System.ComponentModel
'继承得到一个窗体
Public Class Form1
    Inherits System.Windows.Forms.Form
#Region " Windows 窗体设计器生成的代码 "
    Public Sub New ( )
        MyBase.New ( )
        '该调用是 Windows 窗体设计器所必需的。
        InitializeComponent ( )
        '在 InitializeComponent ( ) 调用之后添加任何初始化
    End Sub
    '窗体重写处置以清理组件列表。
    Protected Overloads Overrides Sub Dispose ( ByVal disposing As Boolean )
        If disposing Then
            If Not  ( components Is Nothing ) Then
                components.Dispose ( )
            End If
        End If
        MyBase.Dispose ( disposing )
    End Sub
    '创建Windows 窗体中的各种组件
    Private components As System.ComponentModel.IContainer
    '注意:以下过程是 Windows 窗体设计器所必需的
    '可以使用 Windows 窗体设计器修改此过程。
    '不要使用代码编辑器修改它。
    Friend WithEvents TrackBar1 As System.Windows.Forms.TrackBar
    Friend WithEvents Label1 As System.Windows.Forms.Label
    Friend WithEvents Label2 As System.Windows.Forms.Label
    '初始化各种组件,并定义相关的事件
    Private Sub InitializeComponent ( )
        Me.TrackBar1 = New System.Windows.Forms.TrackBar ( )
        Me.Label1 = New System.Windows.Forms.Label ( )
        Me.Label2 = New System.Windows.Forms.Label ( )
        CType ( Me.TrackBar1 , System.ComponentModel.
	ISupportInitialize ).BeginInit ( )
        Me.SuspendLayout ( )
        Me.TrackBar1.Location = New System.Drawing.Point ( 12 , 48 )
        Me.TrackBar1.Maximum = 100
        Me.TrackBar1.Name = "TrackBar1"
        Me.TrackBar1.Size = New System.Drawing.Size ( 258 , 42 )
        Me.TrackBar1.TabIndex = 1
        Me.Label1.Location = New System.Drawing.Point ( 144 , 104 )
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size ( 66 , 24 )
        Me.Label1.TabIndex = 2
        Me.Label1.Text = "1"
        Me.Label2.Location = New System.Drawing.Point ( 62 , 104 )
        Me.Label2.Name = "Label2"
        Me.Label2.Size = New System.Drawing.Size ( 78 , 23 )
        Me.Label2.TabIndex = 3
        Me.Label2.Text = "透明程度:"
        Me.AutoScaleBaseSize = New System.Drawing.Size ( 6 , 14 )
        Me.ClientSize = New System.Drawing.Size ( 292 , 197 )
	'在窗体中加入组件
        Me.Controls.AddRange ( New System.Windows.Forms.Control ( )
	{ Me.Label2 , Me.Label1 , Me.TrackBar1 } )
        Me.MaximizeBox = False
        Me.Name = "Form1"
        Me.Text = "VB.NET定制透明窗体"
        CType ( Me.TrackBar1 , System.ComponentModel.ISupportInitialize )
	.EndInit ( )
        Me.ResumeLayout ( False )
    End Sub
#End Region
    '事件处理
    Private Sub TrackBar1_Scroll ( ByVal sender As Object , ByVal e As 
System.EventArgs ) Handles TrackBar1.Scroll
        Dim temp As Double
        temp =  ( 100 - TrackBar1.Value ) / 100
        Label1.Text = temp.ToString ( )
        Me.Opacity = temp
    End Sub
End Class
'启动程序
Module Module1
Sub Main ( )
  Application.Run ( new Form1 ( ) )
End sub
End Module


Form.vb源程序文件经过了下列命令编译后,就可以得到执行文件Form.exe,编译命令如下:

Vbc /r:system.dll /r:system.windows.forms.dll /r:system.drawing.dll Form.vb


下面是Form.exe运行界面:



图01:VB.NET定制窗体透明度01




图02:VB.NET定制窗体透明度02


通过上面的介绍,可以了解到如何创建窗体、组件,定义事件等,下面就在上面的这些知识之上,利用窗体的"Opacity"属性和定时器组件来实现一个窗体的特效窗体——实现窗体的淡入淡出效果。




相关信息
VB.NET编程之透明窗体篇 (1)
发布者:mmcbbs
浏览量:160
发布日期:2005-04-10 10:27:27
所属专题:
用户评论
称  呼:
内  容:

广告位

广告招租,欢迎抢订

热门信息

·什么是ODBC
·初识WTL(上)
·理解ActiveX控件的一些背景..
·VB.NET 的新特点:变..
·探讨VB.Net中的数据绑定
·用VB.NET打造NameSpace
·VB.NET中的面向对象编程特征
·用VB和MTS开发多层数据库应..

推荐信息