| |

Fortgeschrittene ProgrammierungRe: Icon in PictureBox anzeigen | |  | Autor: VBStein | Datum: 22.07.08 19:26 |
| Hai,
dein Problem ist eigentlich kaum nachvollziehbar (Grund meiner Antwort liegt in "eigentlich")
mache ich das hier:
Option Explicit
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" ( _
ByVal hInst As Long, _
ByVal lpszExeFileName As String, _
ByVal nIconIndex As Long) As Long
Private Declare Function DrawIcon Lib "user32.dll" ( _
ByVal hdc As Long, _
ByVal x As Long, _
ByVal y As Long, _
ByVal hIcon As Long) As Long
Private Sub Command1_Click()
Dim hIcon As Long
Dim retval As Long
hIcon = ExtractIcon(App.hInstance, "C:\explorer.exe", ByVal 0&)
If hIcon > 1 Then
retval = DrawIcon(Picture1.hdc, 0, 0, hIcon)
If retval <> 0 Then
End If
End If
End Sub Bekomme ich das 32x32 Icon des Windows-Explorers.
Ich habe stillschweigend vereinbart, das große Symbol zu nehmen! Aus einer Ico-Datei, wenn nur ein Icon vorhanden ist, gibt es aber nur ein Symbol bestimmter Größe. DrawIcon wird es auf 32 x 32 Pixel stretchen obwohl es ein nur 16 x 16 Pixel-Icon ist?!
Dieters Hinweis passt auch in diese Richtung: Schaue mal nach, wie groß deine Icons sind, bevor Du mit diesem Handle eine Funktion aufrufst die daraus unbedingt 32 x 32 formen will.
Diese Maße kannst du mit der GetObject(...) API checken, der Du einfach den hIcon handle übergibst. Ggf. muss dann das Icon zwischengespeichert und dann auf die richtige Größe geblittet werden, wofür es leistungsstarke GDI-Funktionen gibt.
Beitrag wurde zuletzt am 22.07.08 um 19:28:09 editiert. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevCommand 4.0 
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
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.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|