说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

拖动无系统标准标题栏的窗口-VB资料

HTML文档下载 WORD文档下载 PDF文档下载
拖动无系统标准标题栏的窗口-VB资料
吴斌
  大家知道,在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事件以摆放上述代码。


移动没有标题栏的窗口
我们一般是用鼠标按住窗口的标题栏,然后移动窗口,当窗口没有标题栏时,
我们可以用下面的方法来移动窗口:
 
在 BAS 文件中声明:
Declare Function ReleaseCapture Lib "user32" () As Long
Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( ByVal
hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)
As Long
Public Const HTCAPTION = 2
Public Const WM_NCLBUTTONDOWN = &HA1
 
然后,在 Form_MouseDown 事件中:
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)
ReleaseCapture
SendMessage hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub



岳雷:Windows Server 2012虚拟化性能提升巨大 陈健:Windows Server 2012让企业轻松管理IT 智能手机:革命已经波及到阴间 兄贵草泥马:重口味单机移动游戏为什么能火? 最炫HTML5框架Famo.us 将免费面向开发者 MySQL到NoSQL:数据的重思和查询方式的转换 程序员心髓:移动应用API设计10大技巧 Netflix公布个性化和推荐系统架构,3种类型作业通实时 从SendCloud到搜狐云 扎克伯格的败笔?Facebook Home可能无家可归 走进eico design,仰视设计师 乔布斯顾问承认苹果的命名糟透了 罗永浩:一百万年薪!招聘软件研发总监 开源的:helios移动应用后端服务框架 IE11将支持WebGL 或将OpenGL映射到DirectX 基于云端的3D渲染和协作平台Lagoa:仅需一个浏览器 大数据提速,IBM 推面向Hadoop的PureData大数据机 游戏开发者的盛宴:2013 CocoaChina春季开发者大会强势启动 开放还是关闭API?CIO做决策前应考虑的六个建议 Python 2.7.4发布,更快的IO模块 如何拒绝沦为服务的商品,并收回对数据的绝对掌控 最阴险的代码?尽在“邪恶”的Underhanded C Facebook Home出阴招:Social皮,Android心 国内最火的五款HTML5前端开发框架 TIOBE 2013年4月编程语言排行榜:Objective-C四年来排名首次下滑 MeeGo复活!Sailfish OS智能手机 SDK发布 10亿美金!传闻谷歌要收购WhatsApp 从打造国内最大的OpenStack公有云开始 展望HBase的未来 你的数据库安全吗?CryptDB数据库软件可查询加密的SQL数据库 收藏!斯坦福Andrew Ng教授“机器学习”26篇教程全译 我曾在本论坛看到一篇“用纯ASP代码实现图片上传并存入数据库中”的文章,可是怎样实现一个页面上传多幅图片呢,高手能否帮忙看一下? 如何检测一个超链接是不是死链接 软件发布:加密专家系统 只要点一下,妹妹我就以身相许 谁有Dreamweaver4.0的注册码,我晕,555555555…~~~~~~~~~11 请问只要是线程就有消息队列,还是此线程产生window后才有消息队列?在控制台程序中,在消息循环中,当受到一wm_timer消息时,此消息将发送给那一window procedure? 软件发布:三维几何画板 CSDN有徐州的朋友吗 请教高手一个关于图像格式的问题 高手清帮忙:如何获得一个控件的电子签名认证?急,急,急! 觅有时间有经验用MAPINFO开发GIS的高手? IE 能不能同时浏览2种以上不同设置的网页? 初级asp问题 询问-----上海在哪里有软件考试报名? 怎样用SDK的方法改变文本框的前景色和背景色?(内空) 能推荐几个有关COM、ActiveX技术的网站吗?每个10分不够再加。 请问ljhua,ASP网页怎样调用*.bat文件,是服务器上的还是客户机上的bat? ****************** 先散掉点分,省得走的时候累赘 ****************** UNICODE和WinMain 一个空战游戏,附源程序! 创建WebSnap应用程序(一) 请教一个http错误号 vs.net安装(2) 请教高手,怎样使用信使服务向局域网内的其他用户发通知? 使用过DeviceIoControl的高手请进: 不知用过jbuilder5的朋友有何感想 如何用程序中断拔号连接? DLL调用 搞什么鬼?不给超过三次? ADOTable如何查询数据? 软件发布:小精灵 vcguy,come on! 我在用resin做标签库时遇到问题,请大家帮忙。 没有源代码的情况下,由*.DLL该如何生成相应的*.LIB文件? 那位先生对 Oracle Spatial比较感兴趣~~~~~~~~~~~~ 如何在电子邮件中加入JAVA语句,重谢!!! 我不知道~ 竟猜: 成精的狐狸不是狐狸mm就是狐狸jj。那HolyFire 是狐狸jj还是狐狸mm呢?? 软件发布:图标精灵 请问在网上怎样发传真! 为何我的表只能做一页 怎样从显示名称获得它的PItemIDList ********如何在窗体中动态的创建组建?********来者有分 笔记本电脑和台式机怎样连起来传输文件! 很菜的问题,请各位指教谢谢! 花开石头你个笨鸟 我在这里那!! 如何设置串口的“流控制”为“无”? 知道一个窗口的CWnd*指针,怎样使得该窗口显示到屏幕的最前端? DOM 关于软件发布的问题 上周末我抓了个小偷! 把19分成若干个自然数的和,如何分才能使他们的乘积最大 有一个质数,是一个两位数,两个数字之和是8,两个数字之差是2,这个质数是多少? 将1~9这九个数字,分别填入方框里,使等式成立.()÷()=()÷()=()()()÷()()=3 把19分成n个自然数的和,怎样分才能使它的乘积最大. 一个质数是两位数,其数字之差为7,这个质数是多少 你能用数字4组成5个数填入方框,使等式成立吗?等数等于100 1.把19分成几个自然数的和,要使这些数的乘积最大,应该怎么分?最大的乘积是多少?2.甲、乙、丙三乡各出等量的钱,购买若干辆汽车,买好后,由于丙乡需要量少,结果丙乡比甲、乙两乡各少要15辆 有一个质数,是两个数字组成的两位数,两个数字之和是8,相差2,这个质数是? 只用数字8组成的五个数,填入下面方框,使等式成立.囗+囗+囗+囗+囗=1000谢谢了, 把19分成若干个自然数的和,如何分才能使自然数的乘积最大?最大值是多少?要算式解. 有一个质数,是两个数字组成的两位数,两个数字之和是8,两个数字之差事2,那么这个质数是几? 只用数字8组成五个数,填入方框内,使等式成立 把19分成几个自然数的和,这些加数的连乘积最大是? 有一个质数,是两个数字组成的两位树,两个数字之和是8,两个数之差是2,那么这个质数是几? 只用数字8组成五个数,填入下面的方框里,使等式成立.口+口十口十口十口=1000 已知四个互不相等的整数的乘积等于9,这四个数的和是? 有一个质数,是两个数字组成的两位数,两个数字之和是8,两个数字之差是2,那么这个质书是几? 口十口十口十口十口=1000 只用数字8组成五个数,填入上面方框里,使等式成立. 已只4个互不相等的整数的乘积等于9这4个的和是几快 我是一个质数,是一个两位数,十位数字与个位数字的和是10,我是? 将只用数字6组成的数,填入下面的方框里,使等式成立 一个整数和一个小数的乘积等于它们的和,求这两个数. 我是一个质数,是一个两位数,十位数字与个位数字的和是10.我是几? 2011是质数还是合数? 如何证明两个数的乘积等于最大公因数与最小公倍数的乘积 一个两位质数,交换个位与十位上的数字,所得的两位数仍是质数,这个数有什么. 2011是不是质数 有三个正整数一个比一个大1,三个数的乘积是210,求三个数 一个两位数的质数,交换个位与十位上的数字,所得的两位数仍是质数,这样的两位数有几个? 求证{2}^{2011}+1不是质数 如果3个连续的正整数的乘积是210,那么这3个数分别是多少? 一个质数是两位数它的个位数字与十位数字之差是7这个质数是几 在2009,2011,2013,2017中,质数有几个? 三个连续正整数,他们的乘积是336,求这三个数. 1/?+1/18=1/? 在2011,2009,2007,2001中,质数的个数是 三个连续的正整数,如果后两个数的乘积的差为114,求这三个数的和 大于6分之1且又小于5分之一,分子分母都是质数,分母是两位数,这样的分数一共有几个 一个质数的3倍和一个质数的4倍的和是100,这两个质数分别是几? 三个正整数的乘积为84,其中两个数的和等于另一个数,这三个数分别是什么? 大于六分之一,小于五分之一,分子、分母都是质数,分母是两位数的分数. 一个质数的3倍与另一个质数的2倍之和为100,那么这两个质数的和是多少? 怎样修改:自然数可以分为奇数、偶数、质数、合数.(注:不能改变“自然数”、“偶数”、“合数”这几个字) 一个大于6分之1且小于5分之1的分数,其分子为一位数的质数,分母是两位数的质数,写出这样所有的分数 一个质数的4倍加上16的3倍,和是100,求这个质数 什么叫自然数 小数 百分数 奇数 偶数 质数 合数 因数 倍数 公倍数 互质数 ( )( )( )( )×( )=( )( )( )( )在方框内填入123456789九个数字,使等式成立,每个数字不得重复使用. 将1,2,...9填入3X3的方格内,使三行,三列,二对角线的三个数之和都等于15,一般地,将连续的正整数1,2,3,.....n平方,填入nXn个方格中,使得每行,每列,每条对角线上的数的和相等,这个正方形就叫做n阶 整数、自然数、小数、分数、奇数、偶数、质数、合数、因数、倍数、真分数、假分数的定义分别是什么?请回答者把以上所有的数的定义都回答上,回答的全的网友追加分! 把123456789这九个数字,分别填入下面九个()中,使等式成立()\()=()()\()=()()\()()=2 在3x3方格中,填入3,4,5,6,7,8,9,10,11这9个数,使每行每列及对角线上的各数之和相等 非零自然数按()的个数来分,可以分成质数()和() 在方框内填上123456789九个数字,使等式成立,数字不得重复.()÷()×()=()() ()+()-()=() 将9各连续的整数填入3×3的方格仲,使每行 每列级对角线上个数的和都为-6 两个连续的非零自然数,他们都是质数,这两个数分别是( ) ( ) 将123456789这九个数字填入框中,使等式成立.()()()=1/2*()()()=1/3*()()() 将3、5、﹣7、1、7、﹣3、9、﹣5、﹣1,这九个数分别填入九个方格中,使得横,竖,斜对角 ()和任何非零自然数都能组成互质数;两个质数的乘积一定是() 把1-9分别填入下面的方格里,每个数字只出现一次,使等式成立□□÷□=□×□-□=□-□×□□□÷□=□×□-□=□-□×□ 将-2,-1,0,1,2,3,4,5,6这九个数分别填入9 个方格中,使横竖斜对角的3个数的和为6
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn