ALIGN
,分别表示以x为左边界,以x为中心和以x为右边界的显示方式,并且以x为左边界是缺省的方式;另外一组值用来控制菜单项的选中方式,包括POPUPMENU_LEFTBUTTON
和POPUPMENU_RIGHTBUTTON,分别表示左键选中和左/右键选中均可,并且左键选中是缺省的方式。flags的值由上面的两组值经过OR运算得出。例如,要求左对齐显示并且左键选中为准,则应有:
flags=POPUPMENU_LEFTALIGN OR POPUPMENU_LEFTBUTTON
x和y用来定义菜单弹出的位置、缺省是鼠标点中的位置。
菜单项的其他属性
用ALT+字母键激活顶层菜单,或者在菜单激活后用字母键激活一个菜单项,必须学会使用&。&用在菜单项的标题属性(Caption)里。它的用法和作用与在用C语言编制的Windows程序中的用法和作用相同。
有时希望顶层菜单之间的间隔大一些,或者某个顶层菜单出现在菜单条的最右端,这时就要用到标题属性是空格的菜单。如果一个菜单的标题是由多个空格组成的,那么这个菜单在菜单条上就占用跟空格的个数相应的空间,并且它后面的菜单也顺序地后移;如果这个菜单的Visible属性是False,那么它就跟不存在一样。
窗口设计的原则和举例
下面是一个浮动窗口技术的例子。为了引起用户的注意,或者必须保证含有重要信息的窗口不被其他窗口覆盖,就要用到浮动窗口技术,建立一个“总在最前面”(TopMost)
的窗口。具体的做法是:
(1)在VB程序中加入如下的声明:
Declare Function SetWindowPos Lib"user"(Byval h%,Byval hb%,Byval x%,Byval
y%,By val cx%,Byval cy%,Byval f%)As Integer Global Const SWP_NOMOVE=2 Global
Const SWP_NOSIZE=1 Global Const HWND_TOPMOST=?1 Global Const HWND_NOTOPMOST=?2
Global Const FLAGS=SWP_NOMOVE Or SWP_NOSIZE
(2)假设要把窗体frmExample设置成总在最前面的窗口,只要在frmExample窗体的Form_Load
过程里加入以下代码:
Dim success%
success=SetWindowPos(frmExample.hWnd,HWND_TOPMOST,0,0,0,0,FLAGS)
如果要取消总在最前面的特性,则可以执行如下的代码:
success=SetWindowPos(frmExample.hWnd,HWND_NOTOPMOST,0,0,0,0,FLAGS)
success不等于0表示SetWindowPos执行成功。
在MDI程序里,有一个窗口是所有其他窗口的父窗口,各个子窗口完成相对独立的功能,就像是多个独立的工具
组合起来一样。在这方面,MS Word和Windows的File Manager是最好的例子。
上一页 [1] [2] [VB.NET程序]GSM短信模块库函数,可以用VB,VC,调用简单实用 [办公软件]PowerPoint做交互课件之弃用VBA [办公软件]VBA获取U盘、主板、CPU序列号和网卡MAC地址 [办公软件]VBA设置文件属性及加密源代码示例 [办公软件]VBA中初始化ADO连接的几种方法 [网络安全]“VB破坏者变种N”病毒摘要 [Web开发]ASP.NET上传文件到数据库VB版 [办公软件]在Excel中利用VBA实现多表单元格数据的读取与赋值… [办公软件]使用Vba读取已关闭的Excel工作薄数据到当前工作表… [办公软件]Excel编程基础之VBA文件操作详解
|