环球网校是美国纳斯达克上市企业欢聚时代(NASDAQ:YY)旗下品牌 | 住房和城乡建设部 建筑人才培训合作单位
您现在的位置在: > 计算机类 > 计算机等级考试 > 考试辅导 >

2011年计算机等考二级VB辅导(25)

2011-07-23 来源:互联网 作者:第一考试网

2011年计算机等考二级VB辅导(25)

#

拖动无系统标题栏的窗口

#

导读:在VB中可以通过设置Form的属性,制作无系统标题栏的窗口。可是,由于失去了系统标题栏,如何使用鼠标拖动窗口便成了一个棘手的问题。其实,借助API函数ReleaseCapture和SendMessage,这个问题便可迎刃而解了。 #

首先,在module文件中加入下列声明语句:

#

Declare Sub ReleaseCapture Lib"User"() #

Declare Function SendMessage Lib"User"(ByVal hWnd _

#

As Integer,ByVal wMsg As Integer,ByVal wParam As Integer,_lParam As Any)As Long

#

Public Const WM_SYSCOMMAND=&H112 #

Public Const SC_MOVE=&HF010

#

Public Const HTCAPTION=2

#

然后,在Form的MouseDown事件中加入下列代码:

#

ReleaseCapture

#

Ret&=SendMessage(Me.hWnd,WM_SYSCOMMAND,_SC_MOVE+HTCAPTION,0)

#

……

#

程序运行后,只要当光标落在Form区域时按住鼠标左键,便可以拖动窗口了。在一些要求生动活泼的界面的程序设计中,开发者常常希望自制风格独特的标题栏,以满足整个界面的要求。通过这个方法,就可以使自制的标题栏达到乱真的地步。不过,用作自制标题栏的控件,必须具有MouseDown事件以摆放上述代码。

#

责编: 返回顶部  打印

关于我们联系我们友情链接网站声明网站地图广告服务帮助中心