如果要求只有按下鼠标左键或者右键才能激活菜单,就必须在form_mousedown里加入如下代码:
sub form_mousedown(button as integer,shift as integer,x as single,y as single)
if button=2 then button=2 表 示 鼠 标 右 键
popupmenu mnuexample
end if
popupmenu 的 完 整 句 法 是:
[form.]popupmenu menuname[flags[,x[,y]]]
改变flags的值可以控制弹出式菜单的表现形式。flags有两组值。第一组值用来控制菜单的显示方式,包括popupmenu_leftalign, popupmenu_centeralign, popupmenu_rightalign, 分别表示以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
[责任编辑:editor]
最新相关文章
发表评论