Advertisement
2002ASP Miscellaneous #195

Multiple Clickable Bitmaps on a drop menu in a for

Very short code! Newly updated and it WORKS! Display bitmaps instead of text on a drop menu, in a form. Use the VB Menu Editor to create a menu with sub menus, the code does the rest!! So easy you will slap yourself for using other people's lengthy drawn-out codes.

AI

Shrnutí AI: This codebase represents a historical implementation of the logic described in the metadata. Our preservation engine analyzes the structure to provide context for modern developers.

Zdrojový kód
original-source
Private Sub Form_Load()
  Dim hMenu As Long, hSubMenu As Long, MenuID As Long

'**************Bonus Code Below*****************************************
'This bonus code adds a bitmap to the form's main drop menu. Click the
'titlebar with the right mouse button to see thr effect.
  hMenu = GetMenu(Form1.hwnd)
  hMenu = GetSystemMenu(hwnd, 0)
  MenuID = 0
  'MenuID = &HF120 'This places the bitmap as first, but looks distorted
          'when the option is not minimized. This is the "restore" option.
X% = ModifyMenu(hMenu, MenuID, MF_BITMAP, MenuID, CLng(Image1.Picture))
'**************Bonus Code above*****************************************

  hMenu = GetMenu(Form1.hwnd)
  hSubMenu = GetSubMenu(hMenu, 0) 'The "0" here is for the first menu Item.
                  'A "1" can be used for the second and a "3"
                  'for the third and so on...
                  'You may not want all menu items to have images
                  'so you can skip a number
 

  MenuID = GetMenuItemID(hSubMenu, 0) 'The "0" here is for the first SUB menu Item.
                    'A "1" can be used for the second and a "3"
                    'for the third and so on...
                    'You may not want all SUB menu items to have images
                    'so you can skip a number
  X% = ModifyMenu(hMenu, MenuID, MF_BITMAP, MenuID, CLng(Image1.Picture))
  MenuID = GetMenuItemID(hSubMenu, 1)
  X% = ModifyMenu(hMenu, MenuID, MF_BITMAP, MenuID, CLng(Image2.Picture))
  
  MenuID = GetMenuItemID(hSubMenu, 2)
  X% = ModifyMenu(hMenu, MenuID, MF_BITMAP, MenuID, CLng(Image3.Picture))

'Note: The entire code above can be copied and pasted below with
'different numbers for different menus and sub menus

'REMEMBER, go to the VB Menu editor (Ctrl+E) and create a menu item.
'Then create 3 sub menus. It doesn't matter what you
'name any of the menus or menu options.
'Tip: Bitmaps work best. GIFs that have invisible colors do not appear invisible
'and icon (*.ico) do not work at all. Use Image controls instead
'of Picture controls to save resources.
'Comments to opus@bargainbd.com
'http://bargainbd.com/opusopus/top.htm
End Sub
Původní komentáře (3)
Obnoveno z Wayback Machine