IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

Changer dynamiquement l'icône du programme


Sujet :

Contribuez

  1. #1
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    468
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 468
    Points : 809
    Points
    809
    Par défaut Changer dynamiquement l'icône du programme
    Testée en WD14. Bien pratique dans mon cas (deux logiciels en 1, on appelle cette fonction au début de chaque fenêtre... gnlogiciel vaut 1 ou 2 selon le logiciel.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    PROCEDURE ChangerIcone()
    // ===== Déclaration des variables
    sIcon est une chaîne 
     
    // ===== Initialisation des variables
    SELON gnLogiciel
    	CAS 1
    		// Cas icone1
    		sIcon = "icone1.ico"
    	CAS 2
    		// Cas icone2
    		sIcon = "icone2.ico"
    	AUTRE CAS
     
    FIN
     
    //Local
    Icon est un entier = 0x80 
     
    SI sIcon = "" ALORS RETOUR
     
    hIcon est un entier = AppelDLL32("user32","LoadImageA" ,Null, sIcon,1,0,0,16) 
     
    SI hIcon ALORS 
    	SendMessage(Handle(),Icon ,1,hIcon) // icône 32*32 (alt-tab) 
    	SendMessage(Handle(),Icon ,0,hIcon) // icône 16*16 (fenêtre) 
    SINON 
    	//Traitement en cas d icone non trouve
    FIN

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut Changer l'icône d'une fenêtre fille MDI
    Merci pour ta contribution.

    Dans le cas d'une application MDI, est-ce que cette technique permettrait de modifier l'icône des fenêtres fille MDI, en choisissant l'icône selon le sujet ou le thème de la fenêtre fille MDI ?

    Y-a-t-il une autre méthode sinon ?

    Merci.

  3. #3
    Membre éclairé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2002
    Messages
    468
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2002
    Messages : 468
    Points : 809
    Points
    809
    Par défaut
    Je ne sais pas, je n'ai pas encore testé ce cas là...

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Suite à ma question...

    Citation Envoyé par =JBO= Voir le message

    Dans le cas d'une application MDI, est-ce que cette technique permettrait de modifier l'icône des fenêtres fille MDI, en choisissant l'icône selon le sujet ou le thème de la fenêtre fille MDI ?
    Oui, l'îcône d'une fenêtre MDI fille peut être modifée grâce à ce code.

    Mais dans le cas d'une fenêtre MDI fille maximisée à l'intérieur de la zone client de la fenêtre parent, le changement d'icône n'est pas immédiat.

    Il faut d'abord que le fenêtre fille soit redimensionnée dans sa propre fenêtre pour que l'icône soit correctement affichée.
    Comment faire pour que dans le cas d'une d'une MDI fillle maximisée, le changement d'icône soit directement répercutée dans la barre de titre, sans bidouiller l'affichage ?

    Pour l'instant, voilà ma bidouille pour que l'icône soit immédiatement affichée:
    Code WLangage : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Iconise()	
    ChangerIcone(<chemin du fichier icône>)	
    Restaure()

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Changer/ajouter des icônes dynamiquement
    Par Invité dans le forum C++
    Réponses: 13
    Dernier message: 30/12/2013, 11h58
  2. Changer dynamiquement la couleur d'un item d'une listview
    Par little_cypress dans le forum C++Builder
    Réponses: 2
    Dernier message: 29/11/2004, 14h46
  3. [JTextArea]changer dynamiquement le nombre de colonnes
    Par MrDuChnok dans le forum Composants
    Réponses: 9
    Dernier message: 27/04/2004, 13h31
  4. Réponses: 7
    Dernier message: 16/03/2004, 15h59
  5. Changer dynamiquement la position des onglets
    Par ginnovy dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/09/2002, 18h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo