|
|
|
|
|
Dicas
|
|
Visual Basic (Miscelâneas)
|
|
|
Título da Dica: TextBox Flat
|
|
|
|
Postada em 15/11/2003 por Juninho 02
Num Modulo
Option Explicit Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Public 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
' Public constants for GetWindowLong API declaration Public Const GWL_STYLE = (-16) Public Const GWL_EXSTYLE = (-20)
' Private constants for extended window styles Public Const WS_EX_CLIENTEDGE = &H200& Public Const WS_EX_STATICEDGE = &H20000
' Public constants for SetWindowPos API declaration Public Const SWP_FRAMECHANGED = &H20 Public Const SWP_NOACTIVATE = &H10 Public Const SWP_NOZORDER = &H4 Public Const SWP_NOSIZE = &H1 Public Const SWP_NOMOVE = &H2
' Public constants for window styles Public Const WS_BORDER = &H800000 Public Const WS_CAPTION = &HC00000 Public Const WS_CHILD = &H40000000 Public Const WS_CLIPCHILDREN = &H2000000 Public Const WS_CLIPSIBLINGS = &H4000000 Public Const WS_DLGFRAME = &H400000 Public Const WS_GROUP = &H20000 Public Const WS_HSCROLL = &H100000 Public Const WS_MAXIMIZEBOX = &H10000 Public Const WS_MINIMIZEBOX = &H20000 Public Const WS_SYSMENU = &H80000 Public Const WS_POPUP = &H80000000 Public Const WS_POPUPWINDOW = (WS_POPUP Or WS_BORDER Or WS_SYSMENU) Public Const WS_TABSTOP = &H10000 Public Const WS_THICKFRAME = &H40000 Public Const WS_SIZEBOX = WS_THICKFRAME Public Const WS_VISIBLE = &H10000000 Public Const WS_VSCROLL = &H200000 Public Const WM_CLOSE = &H10
' Make TextBoxes Flat Public Function MakeFlat(lhWnd As Long) Dim lStyle As Long
' Get Window Style lStyle = GetWindowLong(lhWnd, GWL_EXSTYLE) ' Setup Window Styles lStyle = lStyle And Not WS_EX_CLIENTEDGE Or WS_EX_STATICEDGE ' Set Window Style SetWindowLong lhWnd, GWL_EXSTYLE, lStyle RemoveBorder lhWnd End Function Public Function RemoveBorder(lhWnd As Long) Dim lStyle As Long
' Get Window Style lStyle = GetWindowLong(lhWnd, GWL_STYLE) ' Setup Window Styles lStyle = lStyle And Not (WS_BORDER Or WS_DLGFRAME Or WS_CAPTION Or WS_BORDER Or WS_SIZEBOX Or WS_THICKFRAME) ' Set Window Style SetWindowLong lhWnd, GWL_STYLE, lStyle ' Update Window SetWindowPos lhWnd, 0, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_NOZORDER Or SWP_FRAMECHANGED Or SWP_NOSIZE Or SWP_NOMOVE End Function Public Function TextsFlats(TextsBoxes As Control) MakeFlat TextsBoxes.hwnd End Function
Num Form
Private Sub Form_Load() TextsFlats TxtTeste End Sub
|
|
|
|
|