film indir
Aralık
11th 2007
Menülerde Yazinin Yaninda Resim İcon Kullanma

Posted under Visual Basic




‘Deklarationlar
Public Declare Function LoadImage Lib “user32″ Alias _
  ”LoadImageA” (ByVal hInst As Long, ByVal lpsz As _
  String, ByVal un1 As Long, ByVal n1 As Long, _
  ByVal n2 As Long, ByVal un2 As Long) As Long

Public Declare Function GetMenu Lib “user32″ _
  (ByVal hwnd As Long) As Long

Public Declare Function GetSubMenu Lib “user32″ _
  (ByVal hMenu As Long, ByVal nPos As Long) As Long

Public Declare Function GetMenuItemID Lib “user32″ _
  (ByVal hMenu As Long, ByVal nPos As Long) As Long

Public Declare Function SetMenuItemBitmaps Lib _
  ”user32″ (ByVal hMenu As Long, ByVal nPosition As _
  Long, ByVal wFlags As Long, ByVal hBitmapUnchecked _
  As Long, ByVal hBitmapChecked As Long) As Long

Public Declare Function GetSystemMenu Lib “user32″ _
  (ByVal hwnd As Long, ByVal bRevert As Long) As Long

Public Declare Function DeleteObject Lib “gdi32.dll” _
  (ByVal hObject As Long) As Long

Public Const MF_BYPOSITION = &H400
Public Const MF_BITMAP = &H4&
Public Const LR_LOADFROMFILE = &H10
Public Const IMAGE_BITMAP = 0

‘Esas Program
Option Explicit
‘Bitmap-Handles sembolleri kayitta tut
Dim imgHandle() As Long

Private Sub Form_Load()
  Dim imgCount As Long

  ’Toplam üc resim sembolleri kullanilmakta (0-2)
  imgCount = 2
  ReDim imgHandle(imgCount)

  ’Bildsymbole laden
  imgHandle(0) = LoadImage(App.hInstance, _
    App.Path & “\test.bmp”, IMAGE_BITMAP, 16, 16, _
    LR_LOADFROMFILE)

  imgHandle(1) = LoadImage(App.hInstance, _
    App.Path & “\test2.bmp”, IMAGE_BITMAP, 16, 16, _
    LR_LOADFROMFILE)

  imgHandle(2) = LoadImage(App.hInstance, _
    App.Path & “\test3.bmp”, IMAGE_BITMAP, 16, 16, _
    LR_LOADFROMFILE)

Dim MenuBar As Long
  Dim Menu As Long
  Dim SubMenu As Long

  ’Handle Menü
  MenuBar = GetMenu(Me.hwnd)

  ’Handle birinci Menü (soldan): ID 0
  Menu = GetSubMenu(MenuBar, 0)

  ’Handle birinci Menüdeki ilk altMenü
  SubMenu = GetSubMenu(Menu, 0)
  SetMenuItemBitmaps Menu, SubMenu, MF_BITMAP, _
    imgHandle(0), 0&

  ’Handle birinci Menüdeki ikinci altMenü
  SubMenu = GetSubMenu(Menu, 1)
  SetMenuItemBitmaps Menu, SubMenu, MF_BITMAP, _
    imgHandle(1), 0&

  ’Handle birinci Menüdeki ücüncü altMenü
  SubMenu = GetSubMenu(Menu, 2)
  SetMenuItemBitmaps Menu, SubMenu, MF_BITMAP, _
    imgHandle(2), 0&
End Sub

Private Sub Form_Unload()
  ’Bitmap-Resource kayidini silmek
  Dim i As Integer

  For i = 0 To Ubound(imgHandle)
    DeleteObject imgHandle(i)
  Next i
End Sub

Trackback URI | Comments RSS

Yorum Yaz - Leave a Reply