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

GTK+ avec C & C++ Discussion :

Changer le thème par défaut


Sujet :

GTK+ avec C & C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 47
    Points : 35
    Points
    35
    Par défaut Changer le thème par défaut
    Bonjour,
    j'ai une application en c / gtk et je souhaite changer le thème par défaut qui est utilisé par GTK (tout gris, assez moche... ).
    Après plusieurs recherches, la majeure partie des infos que l'on trouve concernant le changement de thème GTK porte sur Gnome or je suis sous win... J'ai aussi fouillé du coté de Gimp pour win 32 mais il dispose de sa propre intrface de changement de thème, ce qui n'est pas le cas de mon appli. La modification du fichier gtkrc installé avec les runtime gtk n'a pour le moment rien donné. Quekqu'un a une idée ?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2003
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    Je n'ai jamais utilisé GTK sous Win, mais sous linux, tu peux configurer tout les apparences en modifiant l'apparence de chaque objet de ton interface dans le fichier rc.
    C'est plutôt compliqué et lourd mais en tout cas ça marche. Pourquoi pas sous Windows ?
    Essayes d'approfondir cette piste.

    Bon courage.

    Salut.
    VEILLE Julien
    developpeur
    38 - Grenoble

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    Le problème c'est que j'ai bien l'impression que lors de l'exécution du programme, (en tous cas sous win) il ne se préoccupe pas de ce qui et dans le fichier gtkrc. Pour preuve je l'ai enlever de sa place et le programme s'exécute quand même. Les info sont-elles contenus dans le dll de gtk (gtk-1.3.dll) ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2003
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    Sous linux, il faut que j'utilise une fonction spéciale dans le main pour que le programme utilise ce fichier rc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gtk_rc_parse ("nom_du_fichier_rc");
    As-tu un appel de fonction semblable dans ton prog ?
    VEILLE Julien
    developpeur
    38 - Grenoble

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    OK, apres avoir rajouté cette instruction, le fichier gtkrc contenu dans le répertoire de l'application est bien lu. Tous les thèmes simples qui n'utilisent pas de moteur de rendu (mot clé engine dans le gtkrc) fonctionnent mais dès que j'appel un moteur de rendu (pixmap, bluecurve, industrial ...) ça plante. J'ai récupéré tous les dll de ces moteurs mais je ne sait pas où les placer. La console m'affiche un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Unable to locate loadable module in module_path ...
    Pourtant j'ai défini la variable module_path dans les variables d'environnement de mon win. Y a t'il une commande GTK qui permettent d'indiquer le path des modules ??

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2003
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    Voici ce que j'ai dans mon fichier .gtkrc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    module_path "/usr/local/lib/gtk/themes/engines/"
    pour definir le chemin des librairies.

    En mettant le chemin des tes libraires, cela devrait mieux marcher.


    Salut.
    VEILLE Julien
    developpeur
    38 - Grenoble

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 47
    Points : 35
    Points
    35
    Par défaut
    Merci pour ton aide mais j'abandonne là mes tentatives de changement de thèmes. J'ai bien essayé, comme tu le proposes, d'instancier la variable module_path mais rien n'y fait, sous windows c'est très compliqué visiblement (epu de doc sur le net) alors que sous linux c'est très simple... Je me contenterai des thèmes sans engine.

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

Discussions similaires

  1. Changer la page de code par défaut de l'invite de commande
    Par guipom dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 06/04/2006, 11h06
  2. Réponses: 1
    Dernier message: 29/03/2006, 11h33
  3. peut on changer un bouton de formulaire par une image?
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 19/08/2005, 13h55
  4. postgreSQL : changer le port de connexion par defaut ?
    Par radium dans le forum PostgreSQL
    Réponses: 16
    Dernier message: 25/07/2005, 17h16
  5. Réponses: 7
    Dernier message: 16/03/2004, 15h59

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