VB中的界面设计原则和编程技巧
随着Windows通用图形界面的出现,计算机用户无需专门学习即可使用各种Windows软件。不仅如此,它还是程序员在设计Windows程序界面时必须遵循的标准,大大减轻了程序员的负担,使他们能够专注于解决和实现问题。
Visual Basic(以下简称VB)的出现简化了Windows程序界面的设计,只需要少量代码就可以实现标准Win-dows应用程序的界面。但是,如果不了解Windows程序界面设计的原理,或者不熟悉VB下界面编程的技巧,就很难设计和实现一个既符合通用标准又有自己特色的界面。
界面设计原理
界面设计有一般原则,其中最重要的是:
1.接口要一致。一致性原则是界面设计中最容易违背的,也是最容易修改和避免的。例如,在菜单和在线帮助中必须使用相同的术语;对话框必须有相同的风格,等等。
2.常见操作应该有捷径。常用操作经常使用,因此应减少操作序列的长度。比如设置打开、保存、另存为等文件常用操作的快捷方式。常用操作的快捷方式不仅会提高用户的工作效率,在功能实现上也会使界面简洁高效。
3.提供简单的错误处理。系统应具有错误处理功能。当错误发生时,系统应该能够检测到错误,并提供简单易懂的错误处理功能。错误发生后系统的状态没有改变,或者系统应该提供错误恢复的指导。
4.提供信息反馈。应对操作员的重要操作提供信息反馈。可能不需要对常见操作和简单操作进行反馈,但系统应对不常见的操作和重要操作提供信息反馈。
5.该操作是可逆的。操作应该是可逆的。这对于没有专门知识的操作者来说是相当有用的。可逆动作可以是单一操作,也可以是相对独立的操作序列。
6.精心设计的在线帮助。虽然在线帮助对于熟练用户来说不是必须的,但是对于大多数不熟练的用户来说,它起着非常重要的作用。
菜单设计的原则和程序设计
菜单设计有以下一般原则:
根据系统的功能组织菜单。
选择宽而浅的菜单树,而不是窄而深的菜单树。
根据菜单选项的含义进行分组;并按照一定的规则进行排序。
菜单的标题应该简短,意思明确,以关键词开头。
为常用选项设置快捷键。
结合以上原则,菜单编程有以下技巧和技巧:
菜单选项分组
在VB中,菜单选项的分组是通过在菜单栏中分隔水平线来实现的。在菜单的某个位置添加一个属性为“-”的菜单项,它会在菜单上显示为一条水平线。很多情况下,同一个功能菜单可以根据菜单选项的功能分成几组,然后通过划分水平线来对菜单项进行分组。
选项常用快捷键的设置
打开菜单设计窗口,每个菜单选项都应该有对应的快捷键(Short cut)列表,从列表中选择一个即可。请注意,带有子菜单的菜单或顶级菜单的快捷键不能以这种方式定义。根据Windows的界面设计原理,顶部菜单的快捷键是Alt+字母键。
对于一些常用的功能菜单项,都有既定的快捷键。比如CTRL+O用于文件打开,CRTL+S用于文件保存,CTRL+P用于打印等等。
为菜单选项定义快捷键后,快捷键的文本表示会出现在菜单上该选项的后面。
启用和禁用、可见和隐藏菜单选项
为了表示菜单选项的一些特殊功能,可以使用菜单选项的启用和禁用、可见和隐藏属性。当某个选项所代表的功能由于某种原因无法实现时,应该禁止选择。菜单的启用和禁用是通过改变选项的Enabled属性来实现的。例如,假设菜单选项名为mnuName,则禁用此选项的方法如下:
mnuName。启用=假
类似地,隐藏选项可以通过以下方式完成:
mnuName。可见=假
若要使隐藏的选项再次可见,请使用
mnuName。可见=真
在动态菜单的实现中,经常使用隐藏和恢复菜单项。
菜单项的动态加载
菜单项的动态加载是指菜单项的数量不是固定的,可以在需要的时候动态加载。最简单的例子是文件菜单中最近打开的文件列表。在第一次打开文件之前,这个列表是空,不会出现在文件菜单中;打开一个文件后,列表不再空,代表打开文件的菜单项出现在文件菜单中。
在上面的例子中,综合使用了下标属性(Index)、标题属性(Caption)、可见属性(Visible)和菜单项加载方法。
具体实施过程如下:
在文件菜单中添加一个任意标题的菜单项,假设该菜单项的名称属性为opened _ files _ list
更改菜单项opened _ files _ list的visible属性,以便
打开的文件列表。可见=假
更改菜单项opened _ files _ list的下标属性,以便
打开的文件列表。指数=0
控制菜单项打开文件列表在程序中的动态加载。
假设你想显示已经打开的第二个文件的文件名,文件名存储在一个文件名数组opened _ file _ name中。请注意,Load方法不能用于下标为0的菜单项。因为在执行程序时,菜单项已经被加载到存储器中;此外,菜单项的标题属性字符中的“&”字符具有特殊的含义。它的功能是显示属性字符串而不显示“&”本身,而紧跟“&”后面的字符在显示时加下划线,成为热键。
位律师回复
0条评论