VB 版 (精华区)

发信人: Mice (开心果), 信区: VisualBasic
标  题: [转载] [P]VB调用API技巧--拖动无系统标准标题棒的窗口 
发信站: 紫 丁 香 (Mon Nov 16 19:12:25 1998), 转信

【 以下文字转载自 VisualProgram 讨论区 】
【 原文由 Mice 所发表 】
发信人: xiaobo (激情蕴于心中), 信区: Programming 
标 题: VB调用API技巧--拖动无系统标准标题棒的窗口 
发信站: BBS 水木清华站 (Sun Oct  5 11:07:59 1997) 
 
转自《中国计算机报》[一九九七年十月六日 总第678期] 第128版  
 
吴斌  
 
VB调用API技巧--拖动无系统标准标题棒的窗口 
 
  大家知道,在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事件以摆放上述代码。 
 
-- 
  江声浩荡,自屋后上升...... 
                            --《约翰.可利斯朵夫》 
 
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 166.111.26.20] 



--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: 老巴夺转信机器人程序]
--
※ 转载:.紫 丁 香 bbs.hit.edu.cn.[FROM: fengyun.hit.edu.]
--
※ 转载:.紫 丁 香 bbs.hit.edu.cn.[FROM: cad4.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.141毫秒