亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? apiwndclass.cls

?? 1500個WINDOWS API類全集,包括了主要的API調用接口
?? CLS
字號:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
END
Attribute VB_Name = "APIWndClass"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Ext_KEY = "SavedWithClassBuilder" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit

Private Type WndClass
    Style As Long
    lpfnWndProc As Long
    cbClsExtra As Long
    cbWndExtra2 As Long
    hInstance As Long
    hIcon As Long
    hCursor As Long
    hbrBackground As Long
    lpszMenuName As Long '\\ String conversion after api calls
    lpszClassName As Long '\\ String conversion afer api calls
End Type

Private Type WNDCLASSEX
    cbSize As Long
    Style As Long
    lpfnWndProc As Long
    cbClsExtra As Long
    cbWndExtra As Long
    hInstance As Long
    hIcon As Long
    hCursor As Long
    hbrBackground As Long
    lpszMenuName As Long
    lpszClassName As Long
    hIconSm As Long
End Type

'\\ Creation successful?
Public CreatedOK As Boolean

'\\ Members
Public Style As Long
Public cbClsExtra As Long
Public cbWndExtra2 As Long
Public hInstance As Long
'Public hIcon As Long
Public hCursor As Long
Public hbrBackground As Long
Public lpszMenuName As String
Public lpszClassName As String

Private m_lpfnwndproc As Long
Private mIcon As ApiIcon

'\\ Private APIs
Private Declare Function RegisterClassExApi Lib "user32" Alias "RegisterClassExA" (pcWndClassEx As WNDCLASSEX) As Integer
Private Declare Function UnregisterClassApi Lib "user32" Alias "UnregisterClassA" (ByVal lpClassName As String, ByVal hInstance As Long) As Long


'\\ Private memory handling functions
Private Declare Sub CopyMemoryWndClass Lib "KERNEL32" Alias "RtlMoveMemory" (Destination As WndClass, ByVal Source As Long, ByVal Length As Long)
Private Declare Function IsBadReadPtrWndclass Lib "KERNEL32" Alias "IsBadReadPtr" (ByVal lp As Long, ByVal ucb As Long) As Long
Private Declare Function IsBadWritePtrWndclass Lib "KERNEL32" Alias "IsBadWritePtr" (ByVal lp As Long, ByVal ucb As Long) As Long


Private Declare Function GetClassInfoApi Lib "user32" Alias "GetClassInfoA" (ByVal hInstance As Long, ByVal lpClassName As String, lpWndClass As WndClass) As Long

Public Enum enStandardWindowClasses
    SWC_BUTTON = 1 '"BUTTON"
    SWC_COMBOBOX = 2 '"COMBOBOX"
    SWC_EDIT = 3 '"EDIT"
    SWC_LISTBOX = 4 '"LISTBOX"
    SWC_SCROLLBAR = 5 '"SCROLLBAR"
End Enum

Public Enum enCommonControlClasses
    CCC_BUTTONSLISTBOX = 1
    CCC_HOTKEY_CLASS = 2
    CCC_PROGRESS_CLASS = 3
    CCC_STATUSCLASSNAME = 4
    CCC_RICHEDIT = 5
    CCC_TOOLBARCLASSNAME = 6
    CCC_TOOLTIPS_CLASS = 7
    CCC_TRACKBARCLASS = 8
    CCC_UPDOWN_CLASS = 9
    CCC_WC_HEADER = 10
    CCC_WC_LISTVIEW = 11
    CCC_WC_TABCONTROL = 12
    CCC_WC_TREEVIEW = 13
End Enum

Private Function CommonControlClassname(ByVal ClassType As enCommonControlClasses) As String

Select Case ClassType
Case CCC_BUTTONSLISTBOX
    CommonControlClassname = "BUTTONSLISTBOX"
Case CCC_HOTKEY_CLASS
    CommonControlClassname = "HOTKEY_CLASS"
Case CCC_PROGRESS_CLASS
    CommonControlClassname = "PROGRESS_CLASS"
Case CCC_STATUSCLASSNAME
    CommonControlClassname = "STATUSCLASSNAME"
Case CCC_RICHEDIT
    CommonControlClassname = "RICHEDIT"
Case CCC_TOOLBARCLASSNAME
    CommonControlClassname = "TOOLBARCLASSNAME"
Case CCC_TOOLTIPS_CLASS
    CommonControlClassname = "TOOLTIPS_CLASS"
Case CCC_TRACKBARCLASS
    CommonControlClassname = "TRACKBARCLASS"
Case CCC_UPDOWN_CLASS
    CommonControlClassname = "UPDOWN_CLASS"
Case CCC_WC_HEADER
    CommonControlClassname = "WC_HEADER"
Case CCC_WC_LISTVIEW
    CommonControlClassname = "WC_LISTVIEW"
Case CCC_WC_TABCONTROL
    CommonControlClassname = "WC_TABCONTROL"
Case CCC_WC_TREEVIEW
    CommonControlClassname = "WC_TREEVIEW"
End Select

End Function


'\\ --[CreateFromPointer]---------------------------------------------
'\\ Fills this WNDCLASS object from the class name identified to by
'\\ the instance and class name combination
'\\ VB.NET Porting note: This function should be replaced with an override
'\\ of the New() for correctness
'\\ ----------------------------------------------------------------------------------------
'\\ (c) 2001 - Merrion Computing.  All rights  to use, reproduce or publish this code reserved
'\\ Please check http://www.merrioncomputing.com for updates.
'\\ ----------------------------------------------------------------------------------------
Public Function CreateFromClassname(ByVal hInst As Long, ByVal lpClassName As String) As Boolean

Dim lpClass As WndClass
Dim lRet As Long

lRet = GetClassInfoApi(hInst, lpClassName, lpClass)
If Err.LastDllError = 0 And lRet > 0 Then
    CreateFromClassname = CreateFromPointer(VarPtr(lpClass))
End If

End Function

'\\ --[CreateFromPointer]---------------------------------------------
'\\ Fills this WNDCLASS object from the location poiunted to by
'\\ lpWndClass
'\\ VB.NET Porting note: This function should be replaced with an override
'\\ of the New() for correctness
'\\ ----------------------------------------------------------------------------------------
'\\ (c) 2001 - Merrion Computing.  All rights  to use, reproduce or publish this code reserved
'\\ Please check http://www.merrioncomputing.com for updates.
'\\ ----------------------------------------------------------------------------------------
Friend Function CreateFromPointer(lpWndClass As Long) As Boolean

Dim wcThis As WndClass

CreatedOK = False

If Not IsBadReadPtrWndclass(lpWndClass, Len(wcThis)) Then
    Call CopyMemoryWndClass(wcThis, lpWndClass, Len(wcThis))
    If Err.LastDllError = 0 Then
        With wcThis
            Style = .Style
            lpfnWndProc = .lpfnWndProc
            cbClsExtra = .cbClsExtra
            cbWndExtra2 = .cbWndExtra2
            hInstance = .hInstance
            Set Icon = New ApiIcon
            Icon.hIcon = .hIcon
            hCursor = .hCursor
            hbrBackground = .hbrBackground
            If .lpszClassName > 0 Then
                lpszClassName = StringFromPointer(.lpszClassName, 1024)
            End If
            If .lpszMenuName > 0 Then
                lpszMenuName = StringFromPointer(.lpszMenuName, 1024)
            End If
            If Err.LastDllError = 0 Then
                CreatedOK = True
            End If
        End With
    End If
End If

CreateFromPointer = CreatedOK

End Function

Public Property Set Icon(ByVal newIcon As ApiIcon)

If newIcon Is Nothing Then
    Set mIcon = Nothing
Else
    If newIcon.hIcon <> Icon.hIcon Then
        Set mIcon = newIcon
    End If
End If

End Property

Public Property Get Icon() As ApiIcon

    If mIcon Is Nothing Then
        Set mIcon = New ApiIcon
    End If
    
    Set Icon = mIcon
    
End Property

Public Property Let lpfnWndProc(ByVal newLPfnwndproc As Long)

    m_lpfnwndproc = newLPfnwndproc
    
End Property

Public Property Get lpfnWndProc() As Long

    lpfnWndProc = m_lpfnwndproc
    
End Property


Public Function RegisterClassEx() As Boolean

Dim lRet As Long

Dim wndclassThis As WNDCLASSEX

With wndclassThis
    .cbClsExtra = Me.cbClsExtra
    .cbWndExtra = Me.cbWndExtra2
    .cbSize = LenB(wndclassThis)
    .hbrBackground = Me.hbrBackground
    .hCursor = Me.hCursor
    .hInstance = Me.hInstance
    .hIcon = Me.Icon.hIcon
    '.hIconSm = Me.IconSmall.hIcon
    .lpfnWndProc = Me.lpfnWndProc
    .lpszClassName = Me.lpszClassName
    .lpszMenuName = Me.lpszMenuName
    .Style = Me.Style
End With

lRet = RegisterClassExApi(wndclassThis)
If Err.LastDllError = 0 Then
    RegisterClassEx = True
Else
    Call ReportError(Err.LastDllError, "ApiWndClass:RegisterClassEx", GetLastSystemError)
End If

End Function

Public Sub SetDefaultProcAddress()

   Call SetProcAddress(AddressOf VB_WindowProc)
    
End Sub

Private Sub SetProcAddress(ByVal lpAddress As Long)

    Me.lpfnWndProc = lpAddress
    
End Sub


'\\ --[StandardClassName]-------------------------------------------
'\\ Converts between the exported StandarWindowClass type
'\\ and the actual string class name used by windows
'\\ This is done because VB doesn't allow fixed length string
'\\ constants to be exported from a class.
'\\ ----------------------------------------------------------------
Private Function StandardClassName(ByVal ClassType As enStandardWindowClasses) As String

Select Case ClassType
Case SWC_BUTTON
    StandardClassName = "BUTTON"
Case SWC_COMBOBOX
    StandardClassName = "COMBOBOX"
Case SWC_EDIT
    StandardClassName = "EDIT"
Case SWC_LISTBOX
    StandardClassName = "LISTBOX"
Case SWC_SCROLLBAR
    StandardClassName = "SCROLLBAR"
End Select

End Function

Private Sub Class_Terminate()

Set mIcon = Nothing

End Sub


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国三级中文字幕hd久久精品| 国产日产精品一区| 日本久久一区二区| 国产91对白在线观看九色| 国产呦精品一区二区三区网站| 蜜臀av一区二区| 日韩福利电影在线| 麻豆成人在线观看| 国产真实乱对白精彩久久| 久久66热偷产精品| 国产精品亚洲第一| 成人免费观看男女羞羞视频| 国产99久久久久| 91网站在线播放| 欧美午夜不卡视频| 欧美一区二区三区在线视频| 欧美电影免费提供在线观看| 亚洲欧洲制服丝袜| 亚洲精品视频免费观看| 性久久久久久久久久久久| 日韩高清不卡在线| 国产盗摄精品一区二区三区在线| 国产精品一二三四| 91麻豆精品在线观看| 欧美日韩中文精品| 久久综合五月天婷婷伊人| 欧美激情资源网| 亚洲精品老司机| 男女视频一区二区| 国产成人日日夜夜| 欧美在线影院一区二区| 日韩欧美电影一二三| 亚洲国产成人在线| 午夜伊人狠狠久久| 国产盗摄视频一区二区三区| 色婷婷av一区二区三区之一色屋| 欧美日韩mp4| 国产日韩精品一区二区浪潮av| 亚洲精品视频在线| 国产尤物一区二区| 欧美日韩精品高清| 亚洲国产高清不卡| 青青草视频一区| 成人av免费在线观看| 这里只有精品视频在线观看| 国产亚洲欧美中文| 视频一区二区中文字幕| 懂色av噜噜一区二区三区av| 欧美性一级生活| 中文在线一区二区| 麻豆精品新av中文字幕| 色狠狠色噜噜噜综合网| 久久久久97国产精华液好用吗| 一二三四区精品视频| 国产999精品久久久久久| 日韩一区二区三区av| 亚洲欧美另类小说| 成人性视频免费网站| 日韩欧美国产系列| 亚洲成人动漫一区| 久久综合九色综合久久久精品综合| 国产精品美女www爽爽爽| 韩国av一区二区| 91麻豆精品国产自产在线观看一区 | 91蜜桃在线观看| 久久综合久久鬼色中文字| 日韩电影在线看| 欧美三级电影在线看| 亚洲精品成a人| 91视频观看视频| 国产精品美女久久久久久2018| 国产米奇在线777精品观看| 日韩欧美精品在线| 蜜桃久久av一区| 欧美第一区第二区| 麻豆一区二区三区| 精品久久人人做人人爽| 久久99精品国产91久久来源| 欧美一区二区啪啪| 激情深爱一区二区| 久久色中文字幕| 国产成人精品三级| 国产蜜臀av在线一区二区三区| 国产一区二区三区| 国产拍欧美日韩视频二区| 国产白丝精品91爽爽久久| 亚洲国产精品二十页| av网站一区二区三区| 亚洲三级久久久| 91国偷自产一区二区开放时间 | 肉色丝袜一区二区| 7777精品伊人久久久大香线蕉完整版| 一区二区免费看| 欧美高清激情brazzers| 亚洲香肠在线观看| 日韩三级在线免费观看| 韩国一区二区在线观看| 日本一区二区三区国色天香 | 日韩欧美电影在线| 国产成a人亚洲精| 亚洲情趣在线观看| 欧美一级片在线观看| 国产精品影视在线| 亚洲精品福利视频网站| 日韩欧美123| 成人精品电影在线观看| 亚洲综合小说图片| 久久你懂得1024| 91福利社在线观看| 国内成人精品2018免费看| 中文字幕一区在线观看视频| 在线视频你懂得一区| 国产一区二区伦理片| 亚洲精选一二三| 2024国产精品| 在线影院国内精品| 国产一区二区三区在线观看精品 | 亚洲国产中文字幕| 精品99999| 在线观看av一区| 国产98色在线|日韩| av午夜一区麻豆| 久久综合综合久久综合| 亚洲免费资源在线播放| 精品不卡在线视频| 在线不卡免费欧美| 91福利区一区二区三区| 国产成人免费视频网站高清观看视频 | 欧美狂野另类xxxxoooo| 成人网在线播放| 麻豆国产精品一区二区三区| 亚洲乱码国产乱码精品精的特点| 精品理论电影在线观看| 欧美色大人视频| 91久久精品一区二区三区| 国产精品99久久久| 国模冰冰炮一区二区| 首页亚洲欧美制服丝腿| 一区二区三区免费网站| 中文字幕第一区第二区| 久久久一区二区三区| 日韩一区二区免费在线电影| 欧美日韩在线精品一区二区三区激情| 懂色av中文字幕一区二区三区| 久久精品国产一区二区三区免费看| 一区二区三区国产精品| 综合分类小说区另类春色亚洲小说欧美 | 91香蕉国产在线观看软件| 高清免费成人av| 高清不卡一区二区| 国产精品123区| 国产激情一区二区三区四区| 精品中文字幕一区二区| 美腿丝袜亚洲一区| 久久精品久久久精品美女| 蜜臀av一区二区| 久久国产精品第一页| 极品尤物av久久免费看| 国产九色sp调教91| 成人av在线网| 在线一区二区三区四区五区| 色哟哟亚洲精品| 欧美日韩日日骚| 91精品国产色综合久久不卡电影 | 在线精品亚洲一区二区不卡| 91麻豆视频网站| 91精品1区2区| 91精品在线麻豆| 欧美精品一区男女天堂| 久久久亚洲精品石原莉奈| 国产精品人妖ts系列视频| 国产精品精品国产色婷婷| 亚洲视频网在线直播| 亚洲第一综合色| 久久99精品国产麻豆不卡| 东方aⅴ免费观看久久av| 91在线国内视频| 欧美老人xxxx18| 久久综合av免费| 亚洲精品视频在线观看网站| 天天操天天干天天综合网| 久久精品av麻豆的观看方式| 丁香激情综合国产| 欧美午夜视频网站| 日韩精品中午字幕| 国产精品―色哟哟| 亚洲aⅴ怡春院| 国产福利电影一区二区三区| 日本精品裸体写真集在线观看| 欧美日韩和欧美的一区二区| 久久综合色播五月| 依依成人精品视频| 国产乱人伦精品一区二区在线观看| 欧美美女一区二区在线观看| 亚洲精品在线三区| 亚洲一区视频在线| 国产盗摄一区二区| 欧美一区二区在线免费观看| 国产精品日产欧美久久久久| 免费在线观看日韩欧美|