精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● VB和Basic>>● VB和Basic(1)>>API函数>>Tip:如何用SendMessage改变窗体标题栏文

主题:Tip:如何用SendMessage改变窗体标题栏文
发信人: cobe()
整理人: (2000-02-29 09:17:13), 站内信件
'下面代码的功能:
'鼠标指针移动到某个窗体时,窗体的标题栏文字变为"HELLO"
'使用SendMessage实现
Private Declare Function GetMessage Lib "user32" Alias "GetMessageA" (
lpMsg As MSG, ByVal hwnd As Long, ByVal wMsgFilterMin As Long, ByVal w
MsgFilterMax As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA"
 (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam
 As Any) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Const WM_SETTEXT = &HC
Private Type POINTAPI
        x As Long
        y As Long
End Type
Private Type MSG
    hwnd As Long
    message As Long
    wParam As Long
    lParam As Long
    time As Long
    pt As POINTAPI
End Type

Dim mhEnd As Long
Dim mString As String
Dim lens As Integer
Dim mMSG As MSG

Dim mPoint As POINTAPI
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As
 Long, ByVal yPoint As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAP
I) As Long

Private Sub Form_Load()
mString = "Hello"
lens = Len(mString)
End Sub

Private Sub Timer1_Timer()
Call GetCursorPos(mPoint)
mHwnd = WindowFromPoint(mPoint.x, mPoint.y)


Call SendMessage(mHwnd, WM_SETTEXT, 0, ByVal mString)
End Sub

--
学VB,到VB小世界看看
http://vbsworld.yeah.net
你的软件想让更多人看到吗?
http://cobe.163.net
icq:3251926
oicq:250172

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.106.144.229]

[关闭][返回]