摘要載入中… 請(qǐng)稍等…
內(nèi)容載入中… 請(qǐng)稍等…
芯友首頁(yè) 應(yīng)用軟件 編程開(kāi)發(fā) 網(wǎng)絡(luò)硬件 軟件下載 動(dòng)漫音樂(lè) 精美圖庫(kù) 芯友論壇 視頻教程 電腦技術(shù)QQ群:64090268
站長(zhǎng)視頻:photoshop學(xué)友-站長(zhǎng)發(fā)站長(zhǎng)論壇 位置:編程開(kāi)發(fā)>VB> VB窗體文章
在Visual Basic中如何拖動(dòng)窗體或控件2009-3-12 9:36:01 來(lái)源:互聯(lián)網(wǎng)
--------------------------------------------------------------------------------
·在Visual Basic中顯示動(dòng)態(tài)運(yùn)行 ·在Delphi應(yīng)用程序中拖動(dòng)控件 ·制作可移動(dòng)的窗體的MovePanel控件
--------------------------------------------------------------------------------
在Visual Basic中如何拖動(dòng)窗體或控件
現(xiàn)在的許多Windows下的應(yīng)用程序,都采用了圖形化的界面,例如:WINAMP等!
這樣做的好處是可以使程序界面更漂亮生動(dòng),更具吸引力。但是在這樣的界面下就
不能使用Windows原來(lái)的標(biāo)題條了,否則會(huì)影響界面的美觀性。那么在沒(méi)有標(biāo)題條
的情況下如何用鼠標(biāo)拖動(dòng)窗體呢?或者拖動(dòng)其它的控件呢?
其實(shí),采用API函數(shù)調(diào)用很容易實(shí)現(xiàn),下面我們以拖動(dòng)窗體(Form1)為例來(lái)具體
講一下實(shí)現(xiàn)方法:
1.新建立一個(gè)項(xiàng)目,名稱為:test.vbp.
2. 填加一個(gè)模塊,名稱為:test.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 WM_SYSCOMMAND = &H112
Public Const SC_MOVE = &HF012
其中ReleaseCapture函數(shù)是用來(lái)釋放鼠標(biāo)捕獲的,SendMessage函數(shù)是一個(gè)在
WindowsAPI中非常重要的函數(shù),在這里的作用是用來(lái)向Windows發(fā)送移動(dòng)窗體的消
息。WM_SYSCOMMAND是向Windows發(fā)送消息的常量。SC_MOVE是控制移動(dòng)窗體的常量。
請(qǐng)注意:這里SC_MOVE的賦值一定要是&HF012,它表示鼠標(biāo)對(duì)象。
3.在窗體的MouseDown過(guò)程中加入以下代碼:
ReleaseCapture
SendMessage Form1.hwnd, WM_SYSCOMMAND, SC_MOVE, 0
其中ReleaseCapture函數(shù)用來(lái)釋放鼠標(biāo)捕獲,SendMessage函數(shù)向Windows發(fā)送
移動(dòng)窗體的消息。
4.保存并運(yùn)行程序,按下鼠標(biāo),你會(huì)發(fā)現(xiàn)窗體會(huì)隨著鼠標(biāo)的移動(dòng)而移動(dòng)。就和
其它著名的應(yīng)用程序一樣。
以上講述了如何在VB中用鼠標(biāo)拖動(dòng)窗體,其實(shí),控件的拖動(dòng)的原理是一樣的。
例如以下代碼可以實(shí)現(xiàn)圖片框的拖動(dòng):
ReleaseCapture
SendMessage Picture1.hwnd, WM_SYSCOMMAND, SC_MOVE, 0
其實(shí),運(yùn)用API函數(shù)可以實(shí)現(xiàn)許多你意想不到的功能。
[1]
--------------------------------------------------------------------------------
◇→相關(guān)軟件及文章 ◇→網(wǎng)友評(píng)論
巧用VISUAL BASIC的RND()函數(shù)
拖動(dòng)無(wú)標(biāo)題欄窗體的方法
用Delphi 控制窗體的大小
在Delphi程序中應(yīng)用IE瀏覽器控件
--->LimeWire Basic for Windows V4.9.39
--->LimeWire Basic V4.9.37 Beta
--->AV MP3 Player-Morpher Basic V2.0.111
--->RLPack V1.18 Basic Edition┊壓縮可執(zhí)行文件和動(dòng)態(tài)鏈接庫(kù)等┊漢化綠色特別版
--->HPS HwndSpy V1.9.0.961┊對(duì)窗口控件進(jìn)行可視化的定位和監(jiān)測(cè)┊綠色特別版
--------------------------------------------------------------------------------
Tags: Basic 拖動(dòng) 窗體 控件
◎→ 本類最新
用VB設(shè)計(jì)聚焦框程序
用VB6實(shí)現(xiàn)動(dòng)態(tài)增減控件
VB實(shí)現(xiàn)窗口的彈出式菜單
VB6制作Win98風(fēng)格的工具欄
VB5.0中基于桌面的屏幕技巧
VB5.0下工具條的制作
VB 5.0中實(shí)現(xiàn)鼠標(biāo)拖放
-
◎→相關(guān)資源
VB基礎(chǔ)視頻教程
Div+CSS基礎(chǔ)視頻教程
CSS基礎(chǔ)視頻教程
HTML基礎(chǔ)視頻教程
JavaScript入門(mén)精通視頻教程-Ajax
JavaScript入門(mén)視頻教程
VB基礎(chǔ)視頻教程
VB窗體文章
VB文件文章
VB數(shù)據(jù)庫(kù)文章
VB-API文章
VB控制文章
-
◎→ 熱門(mén)資源
用pathping命令來(lái)診斷網(wǎng)絡(luò)故障
比爾·蓋茨下周訪華
Windows98操作系統(tǒng)優(yōu)化實(shí)戰(zhàn)(1)
Windows98操作系統(tǒng)優(yōu)化實(shí)戰(zhàn)(2)
Win2000系統(tǒng)優(yōu)化
Win2000系統(tǒng)內(nèi)存優(yōu)化全攻略
Windows2000操作系統(tǒng)優(yōu)化實(shí)戰(zhàn)
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。