Deklaration: 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 Beschreibung: Parameter:
diFlags Konstanten: ' Das Icon wird unter Verwendung des vom System definierten ' Bildes gezeichnet, nicht mit dem vom Anwender vorgegebenen Bild Const DI_COMPAT = &H4 ' Zeichnet das Icon in seiner Originalgröße ' (cxWidth und cyWidth werden ignoriert) Const DI_DEFAULTSIZE = &H8 ' Zeichnet nur die Bilddaten des Icons/Cursors Const DI_IMAGE = &H2 ' Zeichnet nur die Maske des Icons/Cursors Const DI_MASK = &H1 ' Zeichnet Maske und Bilddaten Const DI_NORMAL = &H3 Rückgabewert: 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 ' Das Icon wird unter Verwendung des vom System definierten ' Bildes gezeichnet, nicht mit dem vom Anwender vorgegebenen Bild Private Const DI_COMPAT = &H4 ' Zeichnet das Icon in seiner Originalgröße ' (cxWidth und cyWidth werden ignoriert) Private Const DI_DEFAULTSIZE = &H8 ' Zeichnet nur die Bilddaten des Icons/Cursors Private Const DI_IMAGE = &H2 ' Zeichnet nur die Maske des Icons/Cursors Private Const DI_MASK = &H1 ' Zeichnet Maske und Bilddaten Private Const DI_NORMAL = &H3 Private hSmallIcons() As Long Private hLargeIcons() As Long Private Sub Form_Load() Dim RetVal As Long Dim 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 im Array 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 ' Vor 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 8.631 mal aufgerufen. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Buchempfehlung Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung sevZIP40 Pro DLL Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
||||||||||||||||||||||||||||
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. |