devxlogo

Make Buttons Appear

Make Buttons Appear

VB doesn’t display the Min and Max buttons in a form’s caption area when you specify BorderStyle Fixed Dialog. If you set the MinButton and MaxButton properties on the form to True, the Minimize and Maximize entries in the context menu are visible-but the buttons are still invisible! To fix this, add this code to a standard module:

 Private Declare Function GetWindowLong Lib "user32" Alias _	"GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As _	Long) As LongPrivate Declare Function SetWindowLong Lib "user32" Alias _	"SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As _	Long, ByVal dwNewLong As Long) As LongPrivate Const GWL_STYLE = (-16)Private Const WS_MINIMIZEBOX = &H20000Private Const WS_MAXIMIZEBOX = &H10000Public Sub SetCaptionButtons(Frm As Form)	Dim lRet As Long	lRet = GetWindowLong(Frm.hWnd, GWL_STYLE)	SetWindowLong Frm.hWnd, GWL_STYLE, lRet Or _		WS_MINIMIZEBOX * (Abs(Frm.MinButton)) Or _		WS_MAXIMIZEBOX * (Abs(Frm.MaxButton))End Sub

You must call the subroutine SetCaptionButtons from the Form_Load event, passing a reference to your form. This should work in VB3 and VB4 16 with the proper 16-bit API declarations (see “Remove Min/Max Buttons From MDI Form”).

See also  Professionalism Starts in Your Inbox: Keys to Presenting Your Best Self in Email
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist