转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
VB.Net之Beta2全接触(一)随心所欲窗体外观转换实例         ★★★★

VB.Net之Beta2全接触(一)随心所欲窗体外观转换实例

作者:闵涛 文章来源:闵涛的学习笔记 点击数:5281 更新时间:2009/4/23 19:00:59

 

一鹤(hjz)_贺建中 撰写 http://www.yescnet.com

今天刚拿到beta2,因为不想邮购,一直等到现在,今天刚到手,就把“随心所欲窗体外观”程序拿来小试了一下(现在大部份的例程都很简单,Microsoft也只有一些Class A Class B 之类很抽象的示例,这个源码我当初在VB6中写出来,在beta1中足足写了一个月才成功,那时候不要说中文,连英文的帮助都找不到,不眠不休才搞定),这也是我比较满意的一个程序,如果用得好,足以制作出令人眩目的效果,所以我不想他失效,所以一定要试一试,一试才知道,在beta2中beta1的程序根本不能用了,要改的地方很多,很多默认的引用并不清楚,只好新建一个工程,重新写过,顺便把我遇到的问题注释在代码中间。痛苦的折腾了一番,终于成功。

全部代码如下:

请到我的网站去下源码吧(我现在还没有上网上传,我会把文章写好再上传源码,所以现在无法标明确切地址,好在首页更新一定有的,
要不我那里搜索功能也很强大,打入“窗体外观”的关键字肯定能找到的)


 

Public Class Form1
    Inherits System.Windows.Forms.Form  ''''继承一个窗体的类
    ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
    ''''注意注意beta2这里的变化
    ''''winforms类现在变成了windows.forms类
    ''''不要想升级或修改beta1的程序,因为很多的基类重新定义了
    ''''必须在beta2中新建,才能默认的有windws.forms这些引用
    ''''如果手工添加|删除引用也可以
    ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
    Dim Genie As AgentObjects.IAgentCtlCharacterEx  ''''声明一个agent的对象
    Const DATAPATH As String = "MERLIN.ACS" ''''加载动画数据
    Public frmpre As Form1 ''''声明一个新的窗体,请不要在这里使用初始化的方法或使用New方法
    Friend WithEvents AxAgent1 As AxAgentObjects.AxAgent
    Friend WithEvents lbExit As System.Windows.Forms.Label
    Friend WithEvents lbPre As System.Windows.Forms.Label
    Friend WithEvents lbShow As System.Windows.Forms.Label
    Friend WithEvents Label3 As System.Windows.Forms.Label
    Public Imindex As Short ''''声明一个整数
#Region " Windows Form Designer generated code "
    Sub New(Optional ByVal strImage As String = Nothing)
        ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
        ''''注意注意beta2这里的变化
        ''''构造函数NEW在beta2现在是在#Region的内部
        ''''构造函数NEW在beta2中不支持重载方法,但是我用一个Optional 参数很快解决了问题
        ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
        MyBase.New() ''''直接调用父类的new过程
        Dim form1 As Form1 = form1
        ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
        ''''注意注意beta2这里的变化
        ''''直接使用form1等于me会出错,默认的form1是一个类,不是一个实例
        ''''使用前要dim form1 as form1=form使声明为一个实例才能赋值
        ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
        form1 = Me ''''设定me关键字
        InitializeComponent() ''''下面是初始化组件,你也可以在下面使用call方法呼叫一个子过程(见前面的文章)
        If Not strImage Is Nothing Then
            ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
            ''''注意注意beta2这里的变化
            ''''strImage<> Nothing 会出错
            ''''请用 Not strImage Is Nothing
            ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
            lbExit.Visible = False : lbShow.Visible = False : lbPre.Visible = False : Label3.Visible = False ''''新窗体不显示控制
            Me.Top = Me.Top + 150 ''''新窗体的位置,top是距离屏幕顶部的高度
            Call SkinRegion(form1, strImage) ''''为窗体改变skin(外观)
        Else
            AxAgent1.Characters.Load("MERLIN", DATAPATH) ''''装载动画数据
            Genie = AxAgent1.Characters("MERLIN") ''''把Agent对象赋于声明的对象,简化书写的过程
            Genie.LanguageID = &H409S ''''设定语音ID
            Call SkinRegion(form1) ''''为窗体改变skin(外观)
        End If
    End Sub
    ''''上面使用overloads定义了两个不同的new过程,在new过程中使用重载可以间接地使一个类产生很好的可重用性,如果你不明白为什么不写一个新的过程,而一定要使用重载
    ''''那么你看看这里的用法,一定会有所启发的。
    Public Overloads Sub Dispose() ''''释放资源,终止程序
        MyBase.Dispose() ''''调用父类的方法
        Region1.Dispose() ''''释放GDI资源
        Genie = Nothing ''''释放动画占用的资源
        ''''components.Dispose() ''''释放组件占用的资源
    End Sub
    ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
    ''''注意注意beta2这里的变化
    ''''Dispose现在是在#Region的内部
    ''''在程序中调用components.Dispose()会出错,可能beta2需要这个对象直到最终销毁
    ''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
    ''''Required by the Windows Form Designer
    Private components As System.ComponentModel.Container
    ''''NOTE: The following procedure is required by the Windows Form Designer
    ''''It can be modified using the Windows Form Designer. 
    ''''Do not modify it using the code editor.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
        Me.Label3 = New System.Windows.Forms.Label()
        Me.lbExit = New System.Windows.Forms.Label()
        Me.lbShow = New System.Windows.Forms.Label()
        Me.lbPre = New System.Windows.Forms.Label()
        Me.AxAgent1 = New AxAgentObjects.AxAgent()
        CType(Me.AxAgent1, System.ComponentModel.ISupportInitialize).BeginInit()
        Me.SuspendLayout()
        ''''
        ''''Label3
        ''''
        Me.Label3.BackColor = System.Drawing.Color.FromArgb(CType(255, Byte), CType(255, Byte), CType(192, By

[1] [2] [3] [4] [5] [6]  下一页


[互联动态]Windows Server 2008 Beta 3官方ISO下载  [聊天工具]体验高速FlashGet1.80beta2评测
[聊天工具]Foxmail 6.0 Beta2最新技巧三则_联络工具_Foxmail…  [聊天工具]新浪UC2005III Beta2新鲜试用__天极Yesky
[聊天工具]新浪UC2005III Beta2新功能介绍__天极Yesky  [聊天工具]UC2005III Beta2发布 主界面重新设计__天极Yesky
[聊天工具]Yahoo新邮箱Mail Beta界面截图__天极Yesky  [聊天工具]试用微软Messenger 8.0 Beta中文版!__天极Yesky
[聊天工具]Yahoo新邮件系统Mail Beta开始测试__天极Yesky  [聊天工具]Foxmail 6.0 Beta2实用新功能讲解__天极Yesky
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台