Page 1 sur 1

[R] Choix d'un icone

Posté : jeu. 12 nov. 2009 17:03
par Narmeke
Bonjour,
Donc j'ai réaliser ceci :

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 319, 133, 415, 252)
$Combo1 = GUICtrlCreateCombo("Autoit", 16, 24, 177, 25)
GUICtrlSetData(-1, "Image|Vidéo|Musique|Dossier|Exel|Word")
$Icon1 = GUICtrlCreateIcon("C:\Users\Narmeke\Desktop\Icones\Icone-Vista-3.ico", -1, 216, 24, 65, 49, BitOR($SS_NOTIFY,$WS_GROUP))
$Button1 = GUICtrlCreateButton("Changer l'Icone", 104, 96, 113, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

FileInstall( "Icone\Autoit.ico", @TempDir & "\Autoit", 1)
FileInstall( "Icone\Dossier.ico", @TempDir & "\Dossier", 1)
FileInstall( "Icone\Image.ico", @TempDir & "\Image", 1)
FileInstall( "Icone\Video.ico", @TempDir & "\Video", 1)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $Button1
            $Nom = GUICtrlRead( $Combo1)
            If $Nom = "Autoit" Then
            $Icon1 = GUICtrlCreateIcon(@TempDir & "\Autoit", -1, 216, 24, 65, 49, BitOR($SS_NOTIFY,$WS_GROUP))
        ElseIf $Nom = "Image" Then
            $Icon1 = GUICtrlCreateIcon(@TempDir & "\Image", -1, 216, 24, 65, 49, BitOR($SS_NOTIFY,$WS_GROUP))
        ElseIf $Nom = "Word" Then
            $Icon1 = GUICtrlCreateIcon("C:\Users\Narmeke\Desktop\Icones\Icone-Vista-3.ico", -1, 216, 24, 65, 49, BitOR($SS_NOTIFY,$WS_GROUP))
        Else
            MsgBox( 0, "Erreur !", "L'icone n'existe pas")
        EndIf

        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd
 
Cela permet comme vous avez dut le voir de choisir l'icone à afficher.
Mais le problème est que les icones napparaissent pas.
Puis j'aimerais aussi que lors du choix de l'icone, l'image change instantanément et non pas avec le clique sur le bouton.

Merci d'avance.

Re: [..] Choix d'un icone

Posté : jeu. 12 nov. 2009 17:51
par DJSIR
$Icon1 = GUICtrlCreateIcon("C:\Users\Narmeke\Desktop\Icones\Icone-Vista-3.ico", -1, 216, 24, 65, 49, BitOR($SS_NOTIFY,$WS_GROUP))
Je viens à peine de voir le code et je tombe sur ca !
"C:\Users\Narmeke" = @UserProfileDir
Bureau = @DesktopDir

En plus, ce n'est pas -1, c'est 1. Il n'y à pas d'icône -1 dans un fichier à ce que je sache ? Il y à 0, 1, 2, 3, 4, ...

Re: [..] Choix d'un icone

Posté : jeu. 12 nov. 2009 22:35
par sylvanie
Juste une remarque pour le -1 pour dire que ça existe, mais c'est plus fréquent dans de la dll, d'ailleurs en regardant l'aide :
Passing a negative number causes 1-based "index" behaviour. Some Dll can have icon extracted just with negative numbers.
Ceci était juste une parenthèse ...

Re: [..] Choix d'un icone

Posté : jeu. 12 nov. 2009 22:47
par sylvanie
Voici un petit exple qui pourrait vous aider ; afin de décoréler l'aspect "un peu trops lié" à votre environnement PC :
► Afficher le texte
[EDIT] j'ai ajouté un 2eme icone l'un uodaté en positif et l'autre en négatif.
Par contre je n'en sais pas plus sur le mode "négatif" ...

Re: [..] Choix d'un icone

Posté : sam. 14 nov. 2009 11:15
par Narmeke
Merci beaucoup sylvanie.
Ton code ma beaucoup aider.