a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 77|回复: 0

[Visual Basic] 2011年计算机等考二级VB辅导知识技巧总结(25)

[复制链接]
发表于 2012-7-31 22:10:12 | 显示全部楼层 |阅读模式
拖动无系统标题栏的窗口  导读:在VB中可以通过设置Form的属性,制作无系统标题栏的窗口。可是,由于失去了系统标题栏,如何使用鼠标拖动窗口便成了一个棘手的问题。其实,借助API函数ReleaseCapture和SendMessage,这个问题便可迎刃而解了。/ \! z4 `  b* u4 v" F) E
  首先,在module文件中加入下列声明语句:: \9 J- c: D2 `2 a
  Declare Sub ReleaseCapture Lib"User"()) d4 m7 T( l6 N0 q3 @0 ^. ~" w
  Declare Function SendMessage Lib"User"(ByVal hWnd _
- Y" n6 p- G& d; O  As Integer,ByVal wMsg As Integer,ByVal wParam As Integer,_lParam As Any)As Long
( X7 J  V  P! P- v- F  Public Const WM_SYSCOMMAND=&H1129 n- `5 g$ W& E; y: G0 h) i
  Public Const SC_MOVE=&HF010
9 g! a5 o1 i$ {- [6 z$ v4 Z! H  Public Const HTCAPTION=2$ {' F) G1 w# {& `
  然后,在Form的MouseDown事件中加入下列代码:
5 b- J( f+ `. r; y6 `  ReleaseCapture" i( L1 x2 J, a  o, f- n6 C' J
  Ret&=SendMessage(Me.hWnd,WM_SYSCOMMAND,_SC_MOVE+HTCAPTION,0). R6 ?, d9 ?6 A% ]7 m0 Q- C' M
  ……
5 y7 y: U& \& _: y  程序运行后,只要当光标落在Form区域时按住鼠标左键,便可以拖动窗口了。在一些要求生动活泼的界面的程序设计中,开发者常常希望自制风格独特的标题栏,以满足整个界面的要求。通过这个方法,就可以使自制的标题栏达到乱真的地步。不过,用作自制标题栏的控件,必须具有MouseDown事件以摆放上述代码。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-18 09:23 , Processed in 0.210202 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表