[R] Insérer une image dans un bouton

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
novembrezoulou
Niveau 4
Niveau 4
Messages : 53
Enregistré le : dim. 06 nov. 2011 14:06
Localisation : Joinville le pont
Status : Hors ligne

[R] Insérer une image dans un bouton

#1

Message par novembrezoulou »

Bonjour,
J'ai attaqué le développement d'un script de tarot et je souhaite afficher les cartes dans des boutons afin de rendre ces cartes "clickables".
Je pensais ce problème simplissime... mais l'image n'apparaît pas. Pourtant, j'ai repris le fichier d'exemple de l'aide en changeant juste le nom de l'image à afficher et en adaptant la taille du bouton à celle de l'image et en modifiant "$BS_ICON" par "$BS_BITMAP".
A noter que le passage par "GuiCtrlCreatePic", avec le même fichier au même emplacement renvoie bien l'image (donc mon "adressage" me semble correct) mais pas dans le bouton.
Je vous joins le fichier de l'image concernée.
Sur le forum, je n'ai pas trouvé de topic traitant de ce sujet d'où cette création.
Merci de vos conseils car il y a sûrement un truc évident que j'ai raté...


Voici le script. :

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>

Example()

Func Example()
    GUICreate("My GUI") ; will create a dialog box that when displayed is centered

    GUICtrlCreateButton("my picture button", 10, 20, 70, 133, $BS_BITMAP)
    GUICtrlSetImage(-1, @ScriptDir & "\01t_1.gif")
    GUISetState(@SW_SHOW)

    ; Loop until the user exits.
    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                ExitLoop

        EndSwitch
    WEnd
EndFunc   ;==>Example
Fichiers joints
01t_1.gif
01t_1.gif (5.76 Kio) Vu 3983 fois
L'aviation est un moyen de transport rapide pour gens pas pressés.
Plus on va moins vite, moins le temps est plus court...
novembrezoulou
Niveau 4
Niveau 4
Messages : 53
Enregistré le : dim. 06 nov. 2011 14:06
Localisation : Joinville le pont
Status : Hors ligne

Re: [..]Insérer une image dans un bouton

#2

Message par novembrezoulou »

rebonsoir,
En continuant à chercher sur le forum, j'ai fini par trouver la fonction "_GuiCtrlButton_SetImage" mais ça ne donne rien de mieux
► Afficher le texte
L'aviation est un moyen de transport rapide pour gens pas pressés.
Plus on va moins vite, moins le temps est plus court...
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..]Insérer une image dans un bouton

#3

Message par orax »

Si l'image est au format BMP les deux codes fonctionnent.
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
novembrezoulou
Niveau 4
Niveau 4
Messages : 53
Enregistré le : dim. 06 nov. 2011 14:06
Localisation : Joinville le pont
Status : Hors ligne

Re: [R]Insérer une image dans un bouton

#4

Message par novembrezoulou »

Merci.
Je n'avais pas testé le BMP car je souhaitais garder le bénéfice de la transparence (d'où le GIF et le PNG -qui ne s’affichait pas non plus...) car les bord des cartes sont arrondis !
Le mieux étant l'ennemi du bien et vu la taille de mes cartes, les angles seront à peine visibles;
Je considère donc le post comme résolu.
Encore merci.

PS : Il s'agit du portage d'un truc que j'avais débuté en TurboPascal durant ma jeunesse, il y a 25 ans. Si j'en viens à bout, je le proposerai sur le forum...
L'aviation est un moyen de transport rapide pour gens pas pressés.
Plus on va moins vite, moins le temps est plus court...
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..]Insérer une image dans un bouton

#5

Message par orax »

Si toutefois ça peut t'être utile, il y a cette solution avec GDI+. Mais le rendu n'est pas meilleur.
► Afficher le texte
Le [R] doit être sur le 1er message ^^ (je l'ai fait).
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
novembrezoulou
Niveau 4
Niveau 4
Messages : 53
Enregistré le : dim. 06 nov. 2011 14:06
Localisation : Joinville le pont
Status : Hors ligne

Re: [R] Insérer une image dans un bouton

#6

Message par novembrezoulou »

Merci pour le "R" !
Pour ta solution, même si le rendu n'est pas meilleurje vais le regarder de près car il fait appel à plein de fonctions que je ne connais pas. Donc... c'est un excellent moyen de se perfectionner.
Je pars du scan d'un jeu réel car je n'ai pas trouvé de dll "cards" avec le jeu de tarot et le seul cards dont je dispose est celui de Windows XP formé des 54 cartes au format "belote". Il semble que sur 7, 8 et 10, cette DLL ait disparu. Dommage car j'en aurais extrait des bitmap plus propres.
L'aviation est un moyen de transport rapide pour gens pas pressés.
Plus on va moins vite, moins le temps est plus court...
Répondre