韩剧1988免费观看全集_久久影视三级福利片_亚洲视频在线观看免费_在线观看欧美日韩_国产亚洲激情在线_亚洲精品美女久久久_欧美国产日韩一区二区在线观看_91在线观看免费高清完整版在线观看_日韩av免费看_国产又爽又黄的激情精品视频_琪琪亚洲精品午夜在线_欧美性猛xxx_不卡毛片在线看_国产亚洲日本欧美韩国_91国内在线视频_精品国产福利视频

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

VB打造超酷個(gè)性化菜單(二)

VB打造超酷個(gè)性化菜單(二)

更新時(shí)間:2022-10-11 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

VB打造超酷個(gè)性化菜單(二)


其實(shí),漂亮的界面都是“畫”出來的,菜單當(dāng)然也不例外。既然是“畫”出來的,就需要有窗體來接收“畫”菜單這個(gè)消息,后面我們會(huì)看到,實(shí)際上不僅僅是“畫”這個(gè)消息,一切關(guān)于這個(gè)菜單的消息都要有一個(gè)窗體來接收。如果你對(duì)消息不太了解,可以看看網(wǎng)上其它一些關(guān)于Windows消息機(jī)制的文章。不了解也沒有關(guān)系,只要會(huì)使用就可以了,后面的文章給出了完整的源代碼,而且文章的最后還給出了源代碼的下載地址。

下面我們來創(chuàng)建接收消息的窗體:打開上次建好的工程,添加一個(gè)窗體,并將其名稱設(shè)置為frmMenu(注意:這一步是必須的)。還記得上篇文章的最后一幅圖嗎?菜單左邊那個(gè)黑底色的附加條,為了方便,將frmMenu的Picture屬性設(shè)置成那幅圖。到此,這個(gè)窗體就算OK了!對(duì)了,就這樣,因?yàn)檫@個(gè)窗體僅僅是為了處理消息和存儲(chǔ)那個(gè)黑底色的風(fēng)格條,我們將會(huì)對(duì)它進(jìn)行子類處理,處理消息的代碼全部都放在了將在下一篇中詳細(xì)介紹的標(biāo)準(zhǔn)模塊中。

接下來添加一個(gè)類模塊,并將其名稱設(shè)置為cMenu,代碼如下:

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

'* 本類模塊是一個(gè)菜單類, 提供了各種樣式的菜單的制作方案

'*

'* 版權(quán): LPP軟件工作室

'* 作者: 盧培培(goodname008)

'* (******* 復(fù)制請(qǐng)保留以上信息 *******)

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



Option Explicit



Private Declare Function TrackPopupMenu Lib "user32" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal x As Long, ByVal y As Long, ByVal nReserved As Long, ByVal hwnd As Long, lprc As Any) As Long



Public Enum MenuUserStyle ' 菜單總體風(fēng)格

STYLE_WINDOWS

STYLE_XP

STYLE_SHADE

STYLE_3D

STYLE_COLORFUL

End Enum



Public Enum MenuSeparatorStyle ' 菜單分隔條風(fēng)格

MSS_SOLID

MSS_DASH

MSS_DOT

MSS_DASDOT

MSS_DASHDOTDOT

MSS_NONE

MSS_DEFAULT

End Enum



Public Enum MenuItemSelectFillStyle ' 菜單項(xiàng)背景填充風(fēng)格

ISFS_NONE

ISFS_SOLIDCOLOR

ISFS_HORIZONTALCOLOR

ISFS_VERTICALCOLOR

End Enum



Public Enum MenuItemSelectEdgeStyle ' 菜單項(xiàng)邊框風(fēng)格

ISES_SOLID

ISES_DASH

ISES_DOT

ISES_DASDOT

ISES_DASHDOTDOT

ISES_NONE

ISES_SUNKEN

ISES_RAISED

End Enum



Public Enum MenuItemIconStyle ' 菜單項(xiàng)圖標(biāo)風(fēng)格

IIS_NONE

IIS_SUNKEN

IIS_RAISED

IIS_SHADOW

End Enum



Public Enum MenuItemSelectScope ' 菜單項(xiàng)高亮條的范圍

ISS_TEXT = &H1

ISS_ICON_TEXT = &H2

ISS_LEFTBAR_ICON_TEXT = &H4

End Enum



Public Enum MenuLeftBarStyle ' 菜單附加條風(fēng)格

LBS_NONE

LBS_SOLIDCOLOR

LBS_HORIZONTALCOLOR

LBS_VERTICALCOLOR

LBS_IMAGE

End Enum



Public Enum MenuItemType ' 菜單項(xiàng)類型

MIT_STRING = &H0

MIT_CHECKBOX = &H200

MIT_SEPARATOR = &H800

End Enum



Public Enum MenuItemState ' 菜單項(xiàng)狀態(tài)

MIS_ENABLED = &H0

MIS_DISABLED = &H2

MIS_CHECKED = &H8

MIS_UNCHECKED = &H0

End Enum



Public Enum PopupAlign ' 菜單彈出對(duì)齊方式

POPUP_LEFTALIGN = &H0& ' 水平左對(duì)齊

POPUP_CENTERALIGN = &H4& ' 水平居中對(duì)齊

POPUP_RIGHTALIGN = &H8& ' 水平右對(duì)齊

POPUP_TOPALIGN = &H0& ' 垂直上對(duì)齊

POPUP_VCENTERALIGN = &H10& ' 垂直居中對(duì)齊

POPUP_BOTTOMALIGN = &H20& ' 垂直下對(duì)齊

End Enum



' 釋放類

Private Sub Class_Terminate()

SetWindowLong frmMenu.hwnd, GWL_WNDPROC, preMenuWndProc

Erase MyItemInfo

DestroyMenu hMenu

End Sub



' 創(chuàng)建彈出式菜單

Public Sub CreateMenu()

preMenuWndProc = SetWindowLong(frmMenu.hwnd, GWL_WNDPROC, AddressOf MenuWndProc)

hMenu = CreatePopupMenu()

Me.Style = STYLE_WINDOWS

End Sub



' 插入菜單項(xiàng)并保存自定義菜單項(xiàng)數(shù)組, 設(shè)置Owner_Draw自繪菜單

Public Sub AddItem(ByVal itemAlias As String, ByVal itemIcon As StdPicture, ByVal itemText As String, ByVal itemType As MenuItemType, Optional ByVal itemState As MenuItemState)

Static ID As Long, i As Long

Dim ItemInfo As MENUITEMINFO

' 插入菜單項(xiàng)

With ItemInfo

.cbSize = LenB(ItemInfo)

.fMask = MIIM_STRING Or MIIM_FTYPE Or MIIM_STATE Or MIIM_SUBMENU Or MIIM_ID Or MIIM_DATA

.fType = itemType

.fState = itemState

.wID = ID

.dwItemData = True

.cch = lstrlen(itemText)

.dwTypeData = itemText

End With

InsertMenuItem hMenu, ID, False, ItemInfo



' 將菜單項(xiàng)數(shù)據(jù)存入動(dòng)態(tài)數(shù)組

ReDim Preserve MyItemInfo(ID) As MyMenuItemInfo



For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

Class_Terminate

Err.Raise vbObjectError + 513, "cMenu", "菜單項(xiàng)別名相同."

End If

Next i



With MyItemInfo(ID)

Set .itemIcon = itemIcon

.itemText = itemText

.itemType = itemType

.itemState = itemState

.itemAlias = itemAlias

End With



' 獲得菜單項(xiàng)數(shù)據(jù)

With ItemInfo

.cbSize = LenB(ItemInfo)

.fMask = MIIM_DATA Or MIIM_ID Or MIIM_TYPE

End With

GetMenuItemInfo hMenu, ID, False, ItemInfo



' 設(shè)置菜單項(xiàng)數(shù)據(jù)

With ItemInfo

.fMask = .fMask Or MIIM_TYPE

.fType = MFT_OWNERDRAW

End With

SetMenuItemInfo hMenu, ID, False, ItemInfo



' 菜單項(xiàng)ID累加

ID = ID + 1



End Sub



' 刪除菜單項(xiàng)

Public Sub DeleteItem(ByVal itemAlias As String)

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

DeleteMenu hMenu, i, 0

Exit For

End If

Next i

End Sub



' 彈出菜單

Public Sub PopupMenu(ByVal x As Long, ByVal y As Long, ByVal Align As PopupAlign)

TrackPopupMenu hMenu, Align, x, y, 0, frmMenu.hwnd, ByVal 0

End Sub



' 設(shè)置菜單項(xiàng)圖標(biāo)

Public Sub SetItemIcon(ByVal itemAlias As String, ByVal itemIcon As StdPicture)

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

Set MyItemInfo(i).itemIcon = itemIcon

Exit For

End If

Next i

End Sub



' 獲得菜單項(xiàng)圖標(biāo)

Public Function GetItemIcon(ByVal itemAlias As String) As StdPicture

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

Set GetItemIcon = MyItemInfo(i).itemIcon

Exit For

End If

Next i

End Function



' 設(shè)置菜單項(xiàng)文字

Public Sub SetItemText(ByVal itemAlias As String, ByVal itemText As String)

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

MyItemInfo(i).itemText = itemText

Exit For

End If

Next i

End Sub



' 獲得菜單項(xiàng)文字

Public Function GetItemText(ByVal itemAlias As String) As String

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

GetItemText = MyItemInfo(i).itemText

Exit For

End If

Next i

End Function



' 設(shè)置菜單項(xiàng)狀態(tài)

Public Sub SetItemState(ByVal itemAlias As String, ByVal itemState As MenuItemState)

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

MyItemInfo(i).itemState = itemState

Dim ItemInfo As MENUITEMINFO

With ItemInfo

.cbSize = Len(ItemInfo)

.fMask = MIIM_STRING Or MIIM_FTYPE Or MIIM_STATE Or MIIM_SUBMENU Or MIIM_ID Or MIIM_DATA

End With

GetMenuItemInfo hMenu, i, False, ItemInfo

With ItemInfo

.fState = .fState Or itemState

End With

SetMenuItemInfo hMenu, i, False, ItemInfo

Exit For

End If

Next i

End Sub



' 獲得菜單項(xiàng)狀態(tài)

Public Function GetItemState(ByVal itemAlias As String) As MenuItemState

Dim i As Long

For i = 0 To UBound(MyItemInfo)

If MyItemInfo(i).itemAlias = itemAlias Then

GetItemState = MyItemInfo(i).itemState

Exit For

End If

Next i

End Function



' 屬性: 菜單句柄

Public Property Get hwnd() As Long

hwnd = hMenu

End Property



Public Property Let hwnd(ByVal nValue As Long)



End Property



' 屬性: 菜單附加條寬度

Public Property Get LeftBarWidth() As Long

LeftBarWidth = BarWidth

End Property



Public Property Let LeftBarWidth(ByVal nBarWidth As Long)

If nBarWidth >= 0 Then

BarWidth = nBarWidth

End If

End Property



' 屬性: 菜單附加條風(fēng)格

Public Property Get LeftBarStyle() As MenuLeftBarStyle

LeftBarStyle = BarStyle

End Property



Public Property Let LeftBarStyle(ByVal nBarStyle As MenuLeftBarStyle)

If nBarStyle >= 0 And nBarStyle <= 4 Then

BarStyle = nBarStyle

End If

End Property



' 屬性: 菜單附加條圖像(只有當(dāng) LeftBarStyle 設(shè)置為 LBS_IMAGE 時(shí)才有效)

Public Property Get LeftBarImage() As StdPicture

Set LeftBarImage = BarImage

End Property



Public Property Let LeftBarImage(ByVal nBarImage As StdPicture)

Set BarImage = nBarImage

End Property



' 屬性: 菜單附加條過渡色起始顏色(只有當(dāng) LeftBarStyle 設(shè)置為 LBS_HORIZONTALCOLOR 或 LBS_VERTICALCOLOR 時(shí)才有效)

' 當(dāng) LeftBarStyle 設(shè)置為 LBS_SOLIDCOLOR (實(shí)色填充)時(shí)以 LeftBarStartColor 顏色為準(zhǔn)

Public Property Get LeftBarStartColor() As Long

LeftBarStartColor = BarStartColor

End Property



Public Property Let LeftBarStartColor(ByVal nBarStartColor As Long)

BarStartColor = nBarStartColor

End Property



' 屬性: 菜單附加條過渡色終止顏色(只有當(dāng) LeftBarStyle 設(shè)置為 LBS_HORIZONTALCOLOR 或 LBS_VERTICALCOLOR 時(shí)才有效)

' 當(dāng) LeftBarStyle 設(shè)置為 LBS_SOLIDCOLOR (實(shí)色填充)時(shí)以 LeftBarStartColor 顏色為準(zhǔn)

Public Property Get LeftBarEndColor() As Long

LeftBarEndColor = BarEndColor

End Property



Public Property Let LeftBarEndColor(ByVal nBarEndColor As Long)

BarEndColor = nBarEndColor

End Property



' 屬性: 菜單項(xiàng)高亮條的范圍

Public Property Get ItemSelectScope() As MenuItemSelectScope

ItemSelectScope = SelectScope

End Property



Public Property Let ItemSelectScope(ByVal nSelectScope As MenuItemSelectScope)

SelectScope = nSelectScope

End Property



' 屬性: 菜單項(xiàng)可用時(shí)文字顏色

Public Property Get ItemTextEnabledColor() As Long

ItemTextEnabledColor = TextEnabledColor

End Property



Public Property Let ItemTextEnabledColor(ByVal nTextEnabledColor As Long)

TextEnabledColor = nTextEnabledColor

End Property



' 屬性: 菜單項(xiàng)不可用時(shí)文字顏色

Public Property Get ItemTextDisabledColor() As Long

ItemTextDisabledColor = TextDisabledColor

End Property



Public Property Let ItemTextDisabledColor(ByVal nTextDisabledColor As Long)

TextDisabledColor = nTextDisabledColor

End Property



' 屬性: 菜單項(xiàng)選中時(shí)文字顏色

Public Property Get ItemTextSelectColor() As Long

ItemTextSelectColor = TextSelectColor

End Property



Public Property Let ItemTextSelectColor(ByVal nTextSelectColor As Long)

TextSelectColor = nTextSelectColor

End Property



' 屬性: 菜單項(xiàng)圖標(biāo)風(fēng)格

Public Property Get ItemIconStyle() As MenuItemIconStyle

ItemIconStyle = IconStyle

End Property



Public Property Let ItemIconStyle(ByVal nIconStyle As MenuItemIconStyle)

IconStyle = nIconStyle

End Property



' 屬性: 菜單項(xiàng)邊框風(fēng)格

Public Property Get ItemSelectEdgeStyle() As MenuItemSelectEdgeStyle

ItemSelectEdgeStyle = EdgeStyle

End Property



Public Property Let ItemSelectEdgeStyle(ByVal nEdgeStyle As MenuItemSelectEdgeStyle)

EdgeStyle = nEdgeStyle

End Property



' 屬性: 菜單項(xiàng)邊框顏色

Public Property Get ItemSelectEdgeColor() As Long

ItemSelectEdgeColor = EdgeColor

End Property



Public Property Let ItemSelectEdgeColor(ByVal nEdgeColor As Long)

EdgeColor = nEdgeColor

End Property



' 屬性: 菜單項(xiàng)背景填充風(fēng)格

Public Property Get ItemSelectFillStyle() As MenuItemSelectFillStyle

ItemSelectFillStyle = FillStyle

End Property



Public Property Let ItemSelectFillStyle(ByVal nFillStyle As MenuItemSelectFillStyle)

FillStyle = nFillStyle

End Property



' 屬性: 菜單項(xiàng)過渡色起始顏色(只有當(dāng) ItemSelectFillStyle 設(shè)置為 ISFS_HORIZONTALCOLOR 或 ISFS_VERTICALCOLOR 時(shí)才有效)

' 當(dāng) ItemSelectFillStyle 設(shè)置為 ISFS_SOLIDCOLOR (實(shí)色填充)時(shí)以 ItemSelectFillStartColor 顏色為準(zhǔn)

Public Property Get ItemSelectFillStartColor() As Long

ItemSelectFillStartColor = FillStartColor

End Property



Public Property Let ItemSelectFillStartColor(ByVal nFillStartColor As Long)

FillStartColor = nFillStartColor

End Property



' 屬性: 菜單項(xiàng)過渡色終止顏色(只有當(dāng) ItemSelectFillStyle 設(shè)置為 ISFS_HORIZONTALCOLOR 或 ISFS_VERTICALCOLOR 時(shí)才有效)

' 當(dāng) ItemSelectFillStyle 設(shè)置為 ISFS_SOLIDCOLOR (實(shí)色填充)時(shí)以 ItemSelectFillStartColor 顏色為準(zhǔn)

Public Property Get ItemSelectFillEndColor() As Long

ItemSelectFillEndColor = FillEndColor

End Property



Public Property Let ItemSelectFillEndColor(ByVal nFillEndColor As Long)

FillEndColor = nFillEndColor

End Property



' 屬性: 菜單背景顏色

Public Property Get BackColor() As Long

BackColor = BkColor

End Property



Public Property Let BackColor(ByVal nBkColor As Long)

BkColor = nBkColor

End Property



' 屬性: 菜單分隔條風(fēng)格

Public Property Get SeparatorStyle() As MenuSeparatorStyle

SeparatorStyle = SepStyle

End Property



Public Property Let SeparatorStyle(ByVal nSepStyle As MenuSeparatorStyle)

SepStyle = nSepStyle

End Property



' 屬性: 菜單分隔條顏色

Public Property Get SeparatorColor() As Long

SeparatorColor = SepColor

End Property



Public Property Let SeparatorColor(ByVal nSepColor As Long)

SepColor = nSepColor

End Property



' 屬性: 菜單總體風(fēng)格

Public Property Get Style() As MenuUserStyle

Style = MenuStyle

End Property



Public Property Let Style(ByVal nMenuStyle As MenuUserStyle)

MenuStyle = nMenuStyle

Select Case nMenuStyle

Case STYLE_WINDOWS ' Windows 默認(rèn)風(fēng)格

Set BarImage = LoadPicture()

BarWidth = 20

BarStyle = LBS_NONE

BarStartColor = GetSysColor(COLOR_MENU)

BarEndColor = BarStartColor

SelectScope = ISS_ICON_TEXT

TextEnabledColor = GetSysColor(COLOR_MENUTEXT)

TextDisabledColor = GetSysColor(COLOR_GRAYTEXT)

TextSelectColor = GetSysColor(COLOR_HIGHLIGHTTEXT)

IconStyle = IIS_NONE

EdgeStyle = ISES_SOLID

EdgeColor = GetSysColor(COLOR_HIGHLIGHT)

FillStyle = ISFS_SOLIDCOLOR

FillStartColor = EdgeColor

FillEndColor = FillStartColor

BkColor = GetSysColor(COLOR_MENU)

SepColor = TextDisabledColor

SepStyle = MSS_DEFAULT

Case STYLE_XP ' XP 風(fēng)格

Set BarImage = LoadPicture()

BarWidth = 20

BarStyle = LBS_NONE

BarStartColor = GetSysColor(COLOR_MENU)

BarEndColor = BarStartColor

SelectScope = ISS_ICON_TEXT

TextEnabledColor = GetSysColor(COLOR_MENUTEXT)

TextDisabledColor = GetSysColor(COLOR_GRAYTEXT)

TextSelectColor = TextEnabledColor

IconStyle = IIS_SHADOW

EdgeStyle = ISES_SOLID

EdgeColor = RGB(49, 106, 197)

FillStyle = ISFS_SOLIDCOLOR

FillStartColor = RGB(180, 195, 210)

FillEndColor = FillStartColor

BkColor = GetSysColor(COLOR_MENU)

SepColor = RGB(192, 192, 192)

SepStyle = MSS_SOLID

Case STYLE_SHADE ' 漸變風(fēng)格

Set BarImage = LoadPicture()

BarWidth = 20

BarStyle = LBS_VERTICALCOLOR

BarStartColor = vbBlack

BarEndColor = vbWhite

SelectScope = ISS_ICON_TEXT

TextEnabledColor = GetSysColor(COLOR_MENUTEXT)

TextDisabledColor = GetSysColor(COLOR_GRAYTEXT)

TextSelectColor = GetSysColor(COLOR_HIGHLIGHTTEXT)

IconStyle = IIS_NONE

EdgeStyle = ISES_NONE

EdgeColor = GetSysColor(COLOR_HIGHLIGHT)

FillStyle = ISFS_HORIZONTALCOLOR

FillStartColor = vbBlack

FillEndColor = vbWhite

BkColor = GetSysColor(COLOR_MENU)

SepColor = TextDisabledColor

SepStyle = MSS_DEFAULT

Case STYLE_3D ' 3D 立體風(fēng)格

Set BarImage = LoadPicture()

BarWidth = 20

BarStyle = LBS_NONE

BarStartColor = GetSysColor(COLOR_MENU)

BarEndColor = BarStartColor

SelectScope = ISS_TEXT

TextEnabledColor = GetSysColor(COLOR_MENUTEXT)

TextDisabledColor = GetSysColor(COLOR_GRAYTEXT)

TextSelectColor = vbBlue

IconStyle = IIS_RAISED

EdgeStyle = ISES_SUNKEN

EdgeColor = GetSysColor(COLOR_HIGHLIGHT)

FillStyle = ISFS_NONE

FillStartColor = EdgeColor

FillEndColor = FillStartColor

BkColor = GetSysColor(COLOR_MENU)

SepColor = TextDisabledColor

SepStyle = MSS_DEFAULT

Case STYLE_COLORFUL ' 炫彩風(fēng)格

Set BarImage = frmMenu.Picture

BarWidth = 20

BarStyle = LBS_IMAGE

BarStartColor = GetSysColor(COLOR_MENU)

BarEndColor = BarStartColor

SelectScope = ISS_ICON_TEXT

TextEnabledColor = vbBlue

TextDisabledColor = RGB(49, 106, 197)

TextSelectColor = vbRed

IconStyle = IIS_NONE

EdgeStyle = ISES_DOT

EdgeColor = vbBlack

FillStyle = ISFS_VERTICALCOLOR

FillStartColor = vbYellow

FillEndColor = vbGreen

BkColor = RGB(230, 230, 255)

SepColor = vbMagenta

SepStyle = MSS_DASHDOTDOT

End Select

End Property



這個(gè)類模塊中包含了各種屬性和方法及關(guān)于菜單的一些枚舉類型,我想強(qiáng)調(diào)的有以下幾點(diǎn):

1、在CreateMenu方法中用SetWindowLong重新定義了frmMenu的窗口入口函數(shù)的地址,MenuWndProc是標(biāo)準(zhǔn)模塊中的一個(gè)函數(shù),就是處理消息的那個(gè)函數(shù)。

2、AddItem這個(gè)方法是添加菜單項(xiàng)的,使用一個(gè)叫做MyItemInfo的動(dòng)態(tài)數(shù)組存儲(chǔ)菜單項(xiàng)的內(nèi)容,在“畫”菜單項(xiàng)的時(shí)候要用到它。在AddItem方法的最后,將菜單項(xiàng)的fType設(shè)置成了MFT_OWNERDRAW,也就是物主繪圖,這一步最關(guān)鍵,因?yàn)閷⒉藛雾?xiàng)設(shè)置成了Owner Draw,Windows將不會(huì)替我們寫字,不會(huì)替我們畫圖標(biāo),一切都由我們自己來。

3、在PopupMenu方法中,調(diào)用了API函數(shù)中的TrackPopupMenu,看到第6個(gè)參數(shù)了嗎?將處理菜單消息的窗口設(shè)置成了frmMenu,而我們又對(duì)frmMenu進(jìn)行了子類處理,一切都在我們的掌握之中。

4、記得要在Class_Terminate中還原frmMenu的窗口入口函數(shù)的地址,并釋放和菜單相關(guān)的資源。



好了,類模塊已經(jīng)OK了,大家可能對(duì)這個(gè)菜單類有了更多的了解,也看到了它的屬性和方法。怎么樣?還算比較豐富吧。如果覺得不夠豐富的話,自己加就好了,呵呵。不過,最核心的部分還不在這里,而是在那個(gè)處理消息的函數(shù),也就是MenuWndProc,它將完成復(fù)雜地“畫”菜單的任務(wù)以及處理各種菜單事件?纯从疫叺臐L動(dòng)條,已經(jīng)夠窄了,下一篇再討論吧。 :)


<>

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
国产精品久久久精品四季影院| 国语精品中文字幕| 欧美中文字幕在线观看| 99视频有精品高清视频| 欧美激情欧美狂野欧美精品| xxxxx99| 92国产在线视频| 中文字幕在线视频日韩| 欧美超碰在线观看| 女人高潮被爽到呻吟在线观看| 5月婷婷6月丁香| 久久久综合激的五月天| 伊人久久大香线蕉成人综合网| 97超视频免费观看| 一级毛片免费高清中文字幕久久网| xxxx黄色片| 日本www在线观看视频| 日本免费看片网站| 色999久久久精品人人澡69| 亚洲永久一区二区三区在线| 美女翘臀白浆直流视频| 超碰成人免费在线| 国产精品久久久久无码av色戒| 国产女精品视频网站免费| 日本视频一区在线观看| 欧美 日韩 国产在线观看| 国产91露脸合集magnet| 91在线视频免费观看| 欧美一区二区播放| 日韩欧美精品网址| 国产精品免费网站在线观看| 国产色视频一区| 成人中心免费视频| 久久bbxx| 2018av在线| 99久久久无码国产精品性波多| 欧美丰满美乳xxx高潮www| 亚洲人成在线网站| 久久免费黄色网址| 成人在线免费电影网站| 精品国产伦一区二区三区观看说明| www.久久.com| 视频一区视频二区视频三区视频四区国产| 99伊人成综合| 一区二区欧美精品| 91精品国产综合久久精品性色| 亚洲日本视频在线| 国产精品无码午夜福利| 欧美日韩1区| 国产精品久久久久久久久借妻| 天天干夜夜艹| 亚洲综合自拍一区| 国产成人免费在线观看不卡| 久久99热这里只有精品国产| 日韩影院一区| 精久久久久久久久久久| 日本精品久久久久| 亚洲欧美日韩不卡一区二区三区| 欧美激情中文字幕| 伊人婷婷久久| 日韩精品乱码av一区二区| 国内精品嫩模av私拍在线观看| 日韩国产一区久久| 高清不卡在线观看| 欧美不卡三区| 成人久久久久久久| 狠狠爱在线视频一区| 国产日韩欧美视频在线观看| 这里只有精品视频在线观看| 亚洲欧美日韩国产一区二区| 精品一区二区三区久久久| 亚州精品国产精品乱码不99按摩| 久久免费视频66| 亚洲人成电影网站色xx| 欧美性大战久久久久久久蜜臀| 欧美日韩精品欧美日韩精品一综合| 一区二区三区中文字幕在线观看| wwwwxxxx日韩| 你懂的在线网址| 超碰在线观看免费版| 国产又粗又黄又爽| 影音先锋中文字幕在线观看| 久久九九影视网| 一区二区中文字幕| 国产午夜亚洲精品一级在线| 国产性色av一区二区| 永久av免费网站| 精油按摩中文字幕久久| 国产电影一区二区三区| 91久久国产综合| 中文字幕视频网| 国产精品影视在线| 色先锋av影音| 黄色电影在线免费观看| 日韩欧美综合视频| 国产精品ⅴa在线观看h| 亚洲美女又黄又爽在线观看| 99re66热这里只有精品4| 欧美久久久久免费| 欧美一区二区三区在线观看免费| 国产成人精品亚洲777人妖| 亚洲电影一区二区| 国产欧美一区二区三区鸳鸯浴| 国产女主播一区| 日韩一区二区精品在线观看| 91精产国品一二三| 国产精品毛片久久久久久久av| 欧美精品第一页| 一卡二卡三卡在线| 特一级黄色片| 男女免费视频网站| 亚洲aaa在线观看| a级黄色一级片| 国产成人福利片| 99精品视频播放| 五月天精品一区二区三区| 亚洲国产一区二区三区网站| 日韩电视剧免费观看网站| 4hu四虎永久在线影院成人| 精品动漫一区二区三区在线观看| 国产真实乱偷精品视频| 日韩精品一区二区三区中文不卡| 欧美孕妇毛茸茸xxxx| www污污网站在线看| 亚洲国产精品人人做人人爽| 二区在线观看| 亚洲色图插插| www精品美女久久久tv| 久久久久亚洲AV成人| 在线播放一区二区精品视频| 国内精品福利| 免费男女羞羞的视频网站在线观看| 另类专区欧美制服同性| 欧美性猛交xxxx乱大交极品| 国产伦精品一区二区三区照片| 国产精品日韩一区二区免费视频| www.久久撸.com| 国产精品亚洲专一区二区三区| 亚洲r级在线视频| 美女网站视频久久| 欧美日韩在线三区| 国产美女三级无套内谢| 久久亚洲二区| 日韩区欧美区| 日韩av在线电影网| 国产又粗又黄视频| 欧美爱爱网站| 91成人在线播放| 亚洲视频精品一区| 91精品国产综合久久婷婷香蕉| 五月天婷婷丁香| 亚洲国产精品无码久久久| 91chinesevideo永久地址| 国产一区二区三区高清播放| 国产精品熟女一区二区不卡| 久久女同精品一区二区| 亚洲成人久久久久| 国偷自产av一区二区三区小尤奈| 在线视频一区二区三区四区| 亚洲专区在线播放| 日韩午夜影院| 亚洲特级片在线| 亚洲欧美偷拍三级| 国产在线播放av| 日本中文字幕视频| 日韩精品福利在线| 欧美亚洲一区二区在线| 菠萝蜜影院一区二区免费| 性欧美free| 一区二区三区视频在线免费观看| 女人扒开双腿让男人捅| 欧美三级视频在线播放| 国产无遮挡又黄又爽又色| 亚洲午夜电影在线| 在线不卡中文字幕| 麻豆app在线观看| 制服丝袜亚洲精品中文字幕| 国产后进白嫩翘臀在线观看视频| 日日夜夜网站| 四虎永久免费在线| 国产毛片在线视频| 亚洲视频在线观看免费| 精品99又大又爽又硬少妇毛片| 福利av在线| 国产欧美欧洲| 日韩电影在线一区二区| 成人免费视频国产免费| 欧美日韩精品一本二本三本| 黄色高清视频在线观看| www.一区二区| 亚洲欧美日韩爽爽影院| 免费观看成人性生生活片| 亚洲精品国产美女| 欧美69xxxxx| 久久精品无码一区| 黄色小视频大全| 亚洲欧美日韩一区二区三区四区| 在线观看免费电影| 欧美日韩二区三区| 成a人片在线观看| 你懂的国产精品| 色妞色视频一区二区三区四区| 大黄网站在线观看| 麻豆成人在线播放| 天堂а√在线中文在线新版| 国产专区视频| 欧美区视频在线观看| 国产成人99久久亚洲综合精品| 99国产精品99| 成人黄色免费短视频| 新天天拍日日拍狠狠拍| 国产亚洲天堂网| 国产ts丝袜人妖系列视频| 国产欧美日韩专区| 91超薄肉色丝袜交足高跟凉鞋| 中文字幕一区久久| 中文字幕一区二区三区四区五区| 人妻一区二区三区| 精品人妻少妇嫩草av无码专区| 91视频黄色| 国产xxxx视频| 亚洲精品国产精品乱码不99按摩| www.狠狠操| 人妻无码久久一区二区三区免费| 亚洲国产视频在线观看| 国产精品jizz在线观看美国| 亚洲av人人澡人人爽人人夜夜| 国产欧美精品日韩区二区麻豆天美| 欧美视频中文一区二区三区在线观看| 久久成人免费电影| 好男人中文字幕官网| 免费在线观看一区二区| 亚洲精品tv| 国产精品影片在线观看| 精品国产视频| 精品国产免费无码久久久| 2020国产精品极品色在线观看| 一区二区三区免费在线视频| 国模娜娜一区二区三区| 国产精品视频久久久久久| 日韩精品视频在线观看一区二区三区| 乡村艳史在线观看| 成人免费看片98| h片精品在线观看| 色婷婷综合久久久中字幕精品久久| 悠悠资源av网站| 亚洲精品喷潮一区二区三区| 亚洲成人综合网站| 国产伦理一区二区| 91青青草免费观看| 久久久免费高清视频| 亚洲黄色在线| 欧美在线观看日本一区| 国产中文字幕在线视频| 欧美一区二区视频免费观看| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 一区二区三区国产好的精华液| 91精品国产91久久久久久不卡| 国产视频精品网| 日韩中文字幕区一区有砖一区| 精品国产髙清在线看国产毛片| 成年女人在线视频| 日韩男人天堂| 2021久久国产精品不只是精品| 你懂的视频在线看| 六月丁香综合| 97干在线视频| 日韩免费福利视频| 亚洲免费黄色片| 欧美深夜视频| 91视视频在线观看入口直接观看www| 久久久国产精品不卡| 欧美性欧美巨大黑白大战| 国产乱论精品| 久久久一二三四| 免费观看30秒视频久久| 爽爽影院免费观看视频| 91丨九色丨黑人外教| 香蕉国产在线| 亚洲一二三区在线| 日本va中文字幕| 亚洲国产欧美在线人成| 成人免费看片98欧美| 丁香花在线影院观看在线播放| 在线播放国产一区二区三区| 性刺激综合网| 国产内射老熟女aaaa| 欧美人成免费网站| 国产a区久久久| 日韩在线免费看| 三级在线免费观看| 人人玩人人添人人澡欧美| 国产一区二三区| 欧美日韩伦理一区二区| 91麻豆一区二区| 国产精品无码久久久久一区二区| 深爱五月综合网| 亚洲人成五月天| 亚洲综合色av| 可以免费看不卡的av网站| 久久久久久久久影视| 欧美国产1区2区| 国产亚洲欧美日韩在线观看一区二区| 9191国语精品高清在线| 国产一二三四五区| 欧美国产在线电影| 久久久噜噜噜久久久| 国产伦精品一区二区三区视频| 福利视频电影| 欧美尺度大的性做爰视频| 久久久亚洲影院| 国产精品老熟女视频一区二区| 国产无套粉嫩白浆内谢| 日本japanese极品少妇| 中文字幕 91| 日韩av一级| 亚洲人成亚洲人成在线观看| 蜜臀久久99精品久久久酒店新书| 性色av蜜臀av浪潮av老女人| 永久久久免费浮力影院| 99麻豆久久久国产精品免费优播| 国内av在线播放| 麻豆精品视频在线| 中文字幕乱伦视频| 久久久久久久久久久久久久久久久| 91美女高潮出水| 中文字幕亚洲一区二区三区| 国产精品18久久久|