PRB: Form with Menu Displays Border w/ Borderstyle Set to None

ID: Q174214

The information in this article applies to:

SYMPTOMS

A Form with a menu displays a border and a titlebar when the BorderStyle property of the form is set to 0-None. The Form displays a border even when the Menus it contains are not visible.

CAUSE

Visual Basic requires a Form with a Menu to have visible borders.

RESOLUTION

Create a second Form to contain your popup menu and use the PopupMenu method in the first Form to access the Menu of the second Form.

STATUS

This behavior is by design.

MORE INFORMATION

This section provides instructions on how to create a borderless Form with a popup menu.

Step-by-Step Example

1. Start a new in Visual Basic. Form1 is created by default.

2. Set the Form1 BorderStyle property to 0-None.

3. Copy the following code to the Code window of Form1:

      Option Explicit

      Private Sub Form_Load()
         Form2.Visible = False
      End Sub

      Private Sub Form_MouseDown(Button As Integer, _
                                 Shift As Integer, _
                                 X As Single, _
                                 Y As Single)

         If Button = vbRightButton Then
            Form1.PopupMenu Form2.mnuMyMenu
         End If
      End Sub

4. Add a second Form to the project.

5. Use the menu editor to add a menu with three menu items to the second

   form. Name the menu mnuMyMenu.

6. Press the F5 key to run the program. The first form displays without a
   border. Right-click the form to display the menu items from the second
   form.

REFERENCES

PopupMenu method topic in the Online Help

(c) Microsoft Corporation 1997, All Rights Reserved. Contributions by Arsenio Locsin, Microsoft Corporation

Additional query words: kbVBp500 kbVBp600 kbVBp kbdsd kbDSupport kbVBp400 kbNoKeyWord

Platform          : WINDOWS
Issue type        : kbprb

Last Reviewed: August 7, 1998