VB.NET、VC#.NET和VC++.NET等共用一个.NET平台,所以安装新的Visual Studio版本时它们全部被安装。新建项目时显示如图1-1所示的"创建新项目"对话框。在右侧列表框中选择语言、平台和项目类型。
图1-1 "创建新项目"对话框
VB.NET和VC#.NET的界面设计窗口如图1-2和图1-3所示,二者大同小异。VB.NET和VC#.NET中的界面设计方法大致相同,不分别介绍。下面主要介绍VB.NET与VB6.0在界面设计方面的差别。与6.0版本相比,VB.NE 中主要有以下几方面的不同。
窗体的变化
虽然在本书的VB篇中曾经介绍过,窗体也是类,但是在VB6.0中,窗体和类基本上是分开来讲的。在VB.NET中,窗体是类这个问题就公开了,如果新建的窗体名称为 Form1,会自动创建一个Form1类,它就相当于6.0中的窗体模块。另外,添加了一些窗体属性。在VB6.0中,将窗体置于顶部需要调用API函数,现在不必了,将它的Topmot属性设置为True就行了。设置Visible属性,可以控制窗体的可见性;利用Opacity属性,可以将窗体设置为透明:利用StartPosition属性,可以设置窗体启动时在屏幕上的显示位置。现在有了模式对话框的概念,如果用ShowDialog方法调用窗体时将该窗体设置为有模式的对话框,则必须关闭该窗体以后才能对其他窗体进行操作。
图1-2 VB.NET的界面设计窗口
图1-3 VC#.NET的界面设计窗口
菜单制作方法的变化
VB 6.0中使用对话框进行菜单制作,现在分别使用MainMenu 控件和ContextMenu 控件制作主菜单和弹出式菜单。菜单项的内容直接在窗体上输入,菜单项的属性,如名称、快捷键、单选、核选等都在属性窗口中设定。这样,菜单的制作就与其他控件的制作统一起来了。
控件设计的变化
部分控件的功能有了一些变化。比如我们常用的图片框控件,现在也能像图像框那样Stretch了。以前为了得到图片框的外框和图像框的Stretch, 我是将它们组合起来用的,现在不必了,设置SizeMode属性就行了。在VB.NET中,Timer, ImageList这样一些不在窗体上显示的控件全部被放到窗体下面的一个空白面板中去了。这样,窗体上要干净一些,对这类控件的管理也方便一些。另外还有一些其他的变化,如后面要讲到的工具栏和状态栏等。详细内容需要参考其他专门介绍语言的书。
管理工具方面也有一些变化。如VB6.0中管理窗体、类和公共模块等的窗口是工程窗口,现在用的是解决方案管理器。以前的工程现在称为项目。解决方案是一个比项目更大的概念,它可以包含多个项目。实际上,解决方案和巧目是两个容器,它 们创建的类、引、数据连接和文件等进行管理。
VB 6.0中有一个对象浏览器,对VB中的所有对象进行显示。NET中有一个类视图窗口,如图1-4所示。它只显示项目中建立的类、接口和模块的信息。
图1-4类视图窗口