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 :

Tour de fenêtre (et gtk 3.22.24 ?)


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut Tour de fenêtre (et gtk 3.22.24 ?)
    Bonjour

    Je travaille à nouveau mon programme que j'avais laissé quelques temps. Il y a une grosse modification au niveau de la première fenêtre qu'il ouvre : elle n'a pas de bord.
    Sous linux xfce4, j'ai juste perdu le bandeau du haut avec entre autre le bouton "fermer". Sous windows (7 ou 10, pas testé ailleurs), comme le haut de la fenêtre (l'élément du haut de la vbox) est un menu, il est en transparent et pas facilement accessible (je n'ai pas l'habitude de windows).
    C'est une nouveauté heureuse ? Ou un problème ? Sous Linux, ce n'est pas trop gênant car j'avais mis un gros bouton [fermer] (élément du bas de la vbox principale), mais sous windows, je trouve que ça complique l'accès au menu.

    J'avoue que j'aimerai bien virer cette option (c'est peut-être que je suis un vieux ringard linuxien). C'est d'autant plus surprenant que les autres fenêtre qui s'ouvrent ensuite sont complètes.
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  2. #2
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Par défaut
    Pour Windows, il y a un changement dans MSYS2 pour utiliser les décorations de fenêtre Windows par défaut.
    Regarde si en mettant la variable d'environnement GTK_CSD à 0 ou 1 te ramène la présentation que tu veux. Je ne sais pas si le CSD (client side decorations) est activé par défaut sous Xfce... Je t'avoue que des captures d'écran ne seraient pas de trop non plus...

  3. #3
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Première image sous windows 10
    Nom : gkt3_20171019_win10.png
Affichages : 448
Taille : 19,0 Ko

    Seconde sous windows7 (pratiquement comme sous xfce4)
    Nom : gkt3_20171019_win7.png
Affichages : 445
Taille : 99,5 Ko

    Alors, le travail des variables d'environnement, déjà que sous Linux, je ne sais pas trop faire, sous windows je 'en sais rien du tout. En plus, mon programme est compilé avec mingw sous Linux et je récupère tout (dll y compris) sous Windows. Donc, je ne pense pas que c'est l'environnement msys.
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  4. #4
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Par défaut
    Ok, je parlais de MSYS2 parce que c'est la manière officielle de récupérer GTK+ pour Windows. Tu donc fais la compilation croisée de toute la pile GTK+ sous Linux avec MinGW ?

    Pour les variable d'environnement, ce n'est pas compliqué. Si tu es sous Linux, tu peux en positionner à partir d'un terminal si c'est juste pour faire un test.

    Par exemple sans variable d'environnement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    rm toto
    rm: impossible de supprimer «toto»: Aucun fichier ou dossier de ce type
    Ensuite, la variable LC_ALL contrôle de tous les paramètres de localisation: langue, séparateur numérique, etc. cf man locale. En la positionnant à la langue 'C', celui indique de ne pas faire de traduction, mais d'utiliser directement le texte qui se trouve dans le code sans appel à gettext. En le plaçant au début de la ligne, la valeur n'est valable que pour la command qui se trouve sur la même ligne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    LC_ALL=C rm toto
    rm: cannot remove 'toto': No such file or directory
    Si c'est pour du long terme tu peux les définir dans ton $HOME/.profile (il faudra cependant te déloguer puis te reloguer pour prendre en compte les modifications). Dans le fichier tu ajoutes juste une ligne:
    ou
    Pour changer une variable d'environnement sous Windows, c'est un peu pareil. Le plus simple pour tester, c'est de positionner la variable dans un fichier .bat dans le même dossier que ta commande.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set GTK_CSD=0
    ton-executable-gtk.exe
    Tu peux aussi naviguer avec l'interpréteur de commande cmd.exe et taper les mêmes commandes.
    Pour du plus long terme, tu as dans les paramètres Windows une section pour les varaibles d'environnement. Cela permet par exemple de changer la variable PATH dont tu peux avoir parfois besoin quand tu installes des choses dans des emplacements non-standard.
    http://www.developper-jeux-video.com...nt-windows-10/

    Pour ce qui est des variables d'environnement qui influencent GTK 3, ça se passe ici:
    https://developer.gnome.org/gtk3/sta...k-running.html

    Le CSD c'est le client-side-decoration. C'est la décoration des fenêtres (bare de titre, contour) qui était autrefois dessiné par le gestionnaire de fenêtres. Au passage à Wayland, GTK+ a fait le choix de dessiner cela lui même, pour des raisons techniques inhérentes au fonctionnement même de Wayland. C'est ça qu'on appelle le CSD.

  5. #5
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    je viens de tester :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      979  set GTK_CSD=0
      980  ./perso
      981  set GTK_CSD=1
      982  ./perso
      983  GTK_CSD=1 ./perso
      984  GTK_CSD=0 ./perso
      985  history
    Aucun changement sur l'affichage.

    Ceci dit, j'aurais été surpris car seule la première fenêtre est impactée, pas les autres. Mais, je ne suis pas sûr d'avoir bien compris...
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  6. #6
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Bonjour

    Je viens de tester sous windows : rien non plus.
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/09/2013, 02h19
  2. Mettre un titre à une fenêtre en GTK
    Par sasssah dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 22/06/2010, 11h03
  3. Problème GTK++ fenêtre MS-DOS
    Par Vestigo dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 30/08/2007, 13h59
  4. Commander des fenêtres GTK avec le shell
    Par clebig dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 31/07/2006, 11h58
  5. [GTK#] Fenêtre transparente ?
    Par nicolas.pied dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 15/05/2006, 22h54

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