Как использовать в своей проге ресурсы других - конкретнее иконки? - VB

Узнай цену своей работы

Формулировка задачи:

Как использовать в своей проге ресурсы других - конкретнее иконки? Ну ведь винды извлекают для ярлыков иконки из ехе файлов и как сделать что бы прога которая уже готова и умеет создавать в себе ярлыки на другие проги и хранить их в своем окне - как сделать что бы эти ярлыки отображались не моими припасенными значками а иконками из файлов на которые ссылаются - ведь путь то известен. как извлечь этот ресурс?

Решение задачи: «Как использовать в своей проге ресурсы других - конкретнее иконки?»

textual
Листинг программы
  1. Private Declare Function ExtractIconEx Lib 'shell32.dll' Alias 'ExtractIconExA' (ByVal lpszFile As String, ByVal nIconIndex As Long, phiconLarge As Long, phiconSmall As Long, ByVal nIcons As Long) As Long
  2. Private Declare Function DrawIcon Lib 'user32' (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long
  3. Private Declare Function DestroyIcon Lib 'user32' (ByVal hIcon As Long) As Long
  4. Private Sub Form_Load()
  5.     Me.ScaleMode = vbPixels
  6.     Me.BackColor = &HFF0000
  7.     Me.Width = (32 * 15 + 10) * Screen.TwipsPerPixelX
  8.     Me.Height = (32 * 10 + 10) * Screen.TwipsPerPixelY
  9.     Me.Top = Screen.Height / 2 - Me.Height / 2
  10.     Me.Left = Screen.Width / 2 - Me.Width / 2
  11.     Me.Caption = 'Èêîíêè, èçâëå÷¸ííûå èç SHELL32.DLL'
  12. End Sub
  13. Private Sub Form_Paint()
  14.     Dim mIcon As Long, Cnt As Long
  15.     Me.Cls
  16.     For j = 0 To Me.ScaleHeight / 32
  17.     For Cnt = 0 To Me.ScaleWidth / 32 - 1
  18.         ExtractIconEx 'shell32.dll', Cnt + Int(j * Me.ScaleWidth / 32), mIcon, ByVal 0&, 1
  19.        DrawIcon Me.hdc, 32 * Cnt, Me.CurrentY, mIcon
  20.         DestroyIcon mIcon
  21.     Next Cnt
  22.     Me.CurrentY = Me.CurrentY + 32
  23.     Next j
  24. End Sub
  25. Private Sub Form_Resize()
  26.     Form_Paint
  27. End Sub
  28.  
  29. 'Удачи!
  30. 'easy

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.7 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы