Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 2.930 pregleda

Najnovija ↓

Preuzimanje ikonice iz programa 03.09.2008. u 20:10 · pre 221 mesec #1
Kako mogu u VB6 da preuzmem ikonicu iz nekog programa i da je stavi u npr PictureBox? Da bi bilo jasnije npr treba da otvori prozor za Open (ono preko Common dialog) i kada ga otvori da u neki picturebox ubaci ikonicu tog programa koji sam izabrao.
Re: Preuzimanje ikonice iz programa 04.09.2008. u 12:26 · pre 221 mesec #3
Dodaj na formu PictureBox i Command Button, i prilepi sledeci kod:

Code:

Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long

Private Sub Command1_Click()
    
    Dim return1 As Long

    Picture1.AutoRedraw = True

    return1& = ExtractIcon(Me.hWnd, "c:\windows\explorer.exe", 0) ' 0 (poslednji argument) ti je icon index, tako da mozes extraktovati sve ikone koje se nalaze u datoteci

    DrawIcon Picture1.hdc, 0, 0, return1&
    
    Picture1.Refresh
    
End Sub


Srecno.
Re: Preuzimanje ikonice iz programa 04.09.2008. u 19:57 · pre 221 mesec #6
Stefan ti je odgovorio na pitanje ...
Ja sam napravio varijaciju na ovaj kod. Program pokazuje sve mogucnosti ove dve Win API funkcije tako sto na Formu iscrtava sve ikonice iz Explorera (ili nekog drugog programa).
Nije potrebno nista od kontrola na formi.
poz
Code:

Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal hIcon As Long) As Long
Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long

Private Sub Form_Load()
Dim hIcon As Long, iNo As Long, no As Long
iNo = ExtractIcon(App.hInstance, "c:\windows\explorer.exe", -1) '-1 vraca broj ikonica u fajlu
If Not iNo = 0 Then
Me.AutoRedraw = True: Me.Move 50 * Screen.TwipsPerPixelX, 50 * Screen.TwipsPerPixelY, iNo * 40 * Screen.TwipsPerPixelX, 75 * Screen.TwipsPerPixelY '
For no = 0 To iNo - 1
hIcon = ExtractIcon(App.hInstance, "c:\windows\explorer.exe", no) ' extractuje ikonicu sa indexom no
DrawIcon Me.hdc, 40 * no, 10, hIcon ' iscrtava jednu do druge
Next no
Me.Refresh
End If
End Sub
Potpis
HomePage http://www.eurora3d.com
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme