Deklaration: Declare Function ExtractIconEx Lib "shell32.dll" _ Alias "ExtractIconExA" ( _ ByVal lpszFile As String, _ ByVal nIconIndex As Long, _ phiconLarge As Long, _ hiconSmall As Long, _ ByVal nIcons As Long) As Long
Beispiel: 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 Private Declare Function DrawIconEx Lib "user32.dll" ( _ ByVal hDC As Long, _ ByVal xLeft As Long, _ ByVal yTop As Long, _ ByVal hIcon As Long, _ ByVal cxWidth As Long, _ ByVal cyWidth As Long, _ ByVal istepIfAniCur As Long, _ ByVal hbrFlickerFreeDraw As Long, _ ByVal diFlags As Long) As Long Private Declare Function DestroyIcon Lib "user32.dll" (ByVal hIcon As Long) As Long Private Const DI_COMPAT = &H4 ' benutzt das als Standard festgelegte benutzerdefinierte Bild Private Const DI_DEFAULTSIZE = &H8 ' zeichnet das Icon/Cursor mit der Standardgröße Private Const DI_IMAGE = &H2 ' zeichnet nur die Bilddaten des Icons/Cursors Private Const DI_MASK = &H1 ' zeichnet nur die Maske des Icons/Cursors Private Const DI_NORMAL = &H3 ' zeichnet Maske und Bilddaten Private hSmallIcons() As Long, hLargeIcons() As Long Private Sub Form_Load() Dim RetVal As Long, IconNum As Long ' Anzahl Icons in der Datei ermitteln IconNum = ExtractIconEx("c:\windows\system\pifmgr.dll", -1, 0&, 0&, 0&) If IconNum = 0 Then MsgBox "Diese Datei hat keine Icons" Exit Sub End If ' Scrollbalken einrichten HScroll1.Max = IconNum - 1 ' Alle Icons der Datei in Arrays speichern ReDim hSmallIcons(IconNum - 1) ReDim hLargeIcons(IconNum - 1) RetVal = ExtractIconEx("c:\windows\system\pifmgr.dll", 0&, hLargeIcons(0), _ hSmallIcons(0), IconNum) End Sub ' beim Scrollen die Icons auf die Form zeichnen Private Sub HScroll1_Change() Me.Cls RetVal = DrawIconEx(Me.hDC, 5, 5, hLargeIcons(HScroll1.Value), 0&, 0&, 0&, 0&, DI_NORMAL) DrawIconEx Me.hDC, 5, 40, hSmallIcons(HScroll1.Value), 0&, 0&, 0&, 0&, DI_NORMAL Me.Refresh End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) On Error Resume Next ' vVor dem Beenden Icons zerstören und Ressourcen wieder freigeben For i = 0 To UBound(hSmallIcons) DestroyIcon hSmallIcons(i) DestroyIcon hLargeIcons(i) Next i End Sub Diese Seite wurde bereits 10.810 mal aufgerufen. |
TOP! Unser Nr. 1 Neu! sevDataGrid 3.0 Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Buchempfehlung Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |