哪位高手能帮我一下啊~~

王朝知道·作者佚名  2009-08-06
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

~~我想在winform中,或在vb中,还有在java中,实现让应用程序显示在"托盘区",像"千千静听"一样的效果,谢谢啦!!

參考答案:

'自己添加一个 Command1, Caption 就是 "放入托盘"

'**********************************************************

Const MAX_TOOLTIP As Integer = 64

Const NIF_ICON = &H2

Const NIF_MESSAGE = &H1

Const NIF_TIP = &H4

Const NIM_ADD = &H0

Const NIM_DELETE = &H2

Const WM_MOUSEMOVE = &H200

Const WM_LBUTTONDOWN = &H201

Const WM_LBUTTONUP = &H202

Const WM_LBUTTONDBLCLK = &H203

Const WM_RBUTTONDOWN = &H204

Const WM_RBUTTONUP = &H205

Const WM_RBUTTONDBLCLK = &H206

Const SW_RESTORE = 9

Const SW_HIDE = 0

Private Type NOTIFYICONDATA

cbSize As Long

hwnd As Long

uID As Long

uFlags As Long

uCallbackMessage As Long

hIcon As Long

szTip As String * MAX_TOOLTIP

End Type

Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Private Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long

Private nfIconData As NOTIFYICONDATA

Private Sub Command1_Click() '添加图标进拖盘

nfIconData.hwnd = Me.hwnd

nfIconData.uID = Me.Icon

nfIconData.uFlags = NIF_ICON Or NIF_MESSAGE Or NIF_TIP

nfIconData.uCallbackMessage = WM_MOUSEMOVE

nfIconData.hIcon = Me.Icon.Handle

nfIconData.szTip = "System Tray Example" & vbNullChar

nfIconData.cbSize = Len(nfIconData)

Call Shell_NotifyIcon(NIM_ADD, nfIconData)

ShowWindow Me.hwnd, SW_HIDE

End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim lMsg As Single

lMsg = X / Screen.TwipsPerPixelX

If lMsg = WM_RBUTTONUP Or lMsg = WM_LBUTTONUP Then

Call Shell_NotifyIcon(NIM_DELETE, nfIconData) '退出图标

Me.Show

End If

End Sub

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航