รบกวนอาจารย์ช่วยแก้ไขโค้ดซ่อนปุ่ม[X]หน่อยค่ะ
กระทู้เก่าบอร์ด อ.Yeadram

 3,184   15
URL.หัวข้อ / URL
รบกวนอาจารย์ช่วยแก้ไขโค้ดซ่อนปุ่ม[X]หน่อยค่ะ

หนูได้โค้ดนี้มาจากเน็ตเพื่อจะซ่อนปุ่ม [X]ของ Access
แต่มันซ่อนผิดตำแหน่งค่ะ คือแทนที่มันจะซ่อน[X] แต่มันไปซ่อนปุ่ม[-]แทนค่ะ ไม่ทราบว่าต้องแก้ไขอย่างไรคะ


Option Explicit

Private Const GWL_STYLE = (-16)
Private Const WS_CAPTION = &HC00000
Private Const WS_MINIMIZEBOX = &H20000
Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_SYSMENU = &H80000

Private Const SWP_NOSIZE = &H1
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOZORDER = &H4
Public Const SWP_FRAMECHANGED = &H20

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" ( _
    ByVal hwnd As Long, _
    ByVal nIndex As Long _
    ) As Long

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" ( _
    ByVal hwnd As Long, _
    ByVal nIndex As Long, _
    ByVal dwNewLong As Long _
    ) As Long

Private Declare Function SetWindowPos Lib "user32" ( _
    ByVal hwnd As Long, _
    ByVal hWndInsertAfter As Long, _
    ByVal X As Long, _
    ByVal Y As Long, _
    ByVal cx As Long, _
    ByVal cy As Long, _
    ByVal wFlags As Long _
    ) As Long


Function ShowAccessCloseButton(Show As Boolean) As Long

Dim hwnd As Long
Dim nIndex As Long
Dim dwNewLong As Long
Dim dwLong As Long

hwnd = hWndAccessApp
nIndex = GWL_STYLE

Const wFlags = SWP_NOSIZE + SWP_NOZORDER + SWP_FRAMECHANGED + SWP_NOMOVE
Const FLAGS_COMBI = WS_MINIMIZEBOX Or WS_MAXIMIZEBOX Or WS_SYSMENU

dwLong = GetWindowLong(hwnd, nIndex)

If Show Then
    dwNewLong = (dwLong Or FLAGS_COMBI)
Else
    dwNewLong = (dwLong And Not FLAGS_COMBI)
End If

Call SetWindowLong(hwnd, nIndex, dwNewLong)
Call SetWindowPos(hwnd, 0&, 0&, 0&, 0&, 0&, wFlags)

End Function

==========
-Call ShowAccessCloseButton(False) เมื่อต้องการให้ซ่อน
-Call ShowAccessCloseButton(true) เมื่อต้องการให้โชว์
==========

@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3474s