comment puis-je faire pour colorier le fonds de la barre de titre de ma fenetre principale ?
j'ai l'impression qu'elle a la couleur système des fenêtres..
il s'agit de l'espace au dessus de la barre de menus que j'ai créé et que j'arrive à colorier en vert...
j'aimerai que cela puisse se faire aussi bien pour un utilisateur "linux" que "windows"
je suis sur linux mint
je commence tout juste à apprendre python 3.5 et je trouvais plus sympa de commencer par tkinter pour faire d'abord du visuel avant de rentrer dans la programmation davantage python.

Merci déjà par avance pour avoir pris le temps de lire ce message...

voici mon fichier fonctions qui me sert à appeler les différentes fonctions pour faire fonctionner mon programme:

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#!/usr/bin/python2.7
#-*- coding: utf-8 -*-
 
""" on appelle le module tkinter de Python 3.5 pour utiliser les éléments de ce module. On importe Tkinter depuis la bibliothèque """
from tkinter import *
from tkinter import messagebox
 
def creation_fenetre():
    """ on détermine la variable fenetre comme une variable globale pouvanat être
        prise en compte partout ailleurs dans le programme """
    global fenetre
    """ on crée  une instanciation de la fenêtre en prenant une partie de l'objet
        Tk() """
    fenetre = Tk()
    """ on détermine la resolution de l'ecran de l'ordinateur sur lequel on est,
        après avoir rendu la variable 'globale' pour qu'elle puisse être vue par
        les autres parties du programmes lorsqu'elle est appelée dans le fichier
        extérieur"""
    global w
    w = fenetre.winfo_screenwidth()
    global h
    h = fenetre.winfo_screenheight()
    """ on determine le % de l'ecran utilisé par la fenetre """
    global pourcent
    pourcent = 0.80
    """ on colore le fond de la fenetre en orange"""
    fenetre['bg']='orange'    
    """ on affecte les dimensions de l'ecran pour ouvrir la fenetre à x%(variable pourcent) du plein ecran """
    fenetre.geometry("%dx%d+0+0" % (w*pourcent, h*pourcent))
    """ on donne un titre à la fenetre """
    fenetre.title("Jus d'orange")  # titre de la fenetre
    """ autorisation du déplacement de la fenetre par l'utilisateur """
    fenetre.positionfrom("user")      # placement manuel de la fenetre possible avec la souris
    """ autorisation du redimensionnement de la fenetre par l'utilisateur """
    fenetre.sizefrom("user")          # dimensionnement manuel de la fenetre possible
    """ on determine la possibilité de détruire la fenetre """
    fenetre.protocol("WM_DELETE_WINDOW", fenetre.destroy) # evenement WM
 
def ajout_bouton_quitter():
    """ on ajoute un bouton quitter """
    Bouton = Button(fenetre,text="Fermer la fenetre",fg='navy',command=fenetre.destroy)
    """ on permet de voir le bouton """
    Bouton.pack()
    """ on place le Button en bas à droite de la fenêtre par la méthode place() """
    Bouton.place(x=w*pourcent-140, y=h*pourcent-30)
 
def ajout_champ_label001():
    global texte001
    texte001 = "Bonjour !"
    # On crée un label (ligne de texte) souhaitant la bienvenue
    # Note : le premier paramètre passé au constructeur de Label est notre
    # interface racine
    champ_label001 = Label(fenetre, text= texte001) # text est l'option représentant le texte affiché par le label
 
    # On affiche le label dans la fenêtre par la méthode pack
    # les boutons, champs de texte, cases à cocher, barres de progression etc... sont appelés widgets
    champ_label001.pack()
    """ on place le champ_label en haut au centre de la fenêtre par la méthode place() """
    champ_label001.place(x=(w*pourcent/2), y=h*pourcent-(h-260))
 
def ajout_champ_label002():
    global texte002
    texte002 = "Avant de commencer, je vais te raconter une longue histoire ..................................................................................Re-Bonjour !"
    # On crée un label (ligne de texte) contenant le texte
    # Note : le premier paramètre passé au constructeur de Label est notre
    # interface racine
    champ_label002 = Label(fenetre, text= texte002) # text est l'option représentant le texte affiché par le label
 
    # On affiche le label dans la fenêtre par la méthode pack
    # les boutons, champs de texte, cases à cocher, barres de progression etc... sont appelés widgets
    champ_label002.pack()
    """ on place le champ_label en haut au centre de la fenêtre par la méthode place() """
    champ_label002.place(x=(w*pourcent/100), y=h*pourcent-(h-280))
 
def ajout_champ_label003():
    global texte003
    texte003 = "et voila une troisième histoire ..................................................................................Re-Bonjour !"
    # On crée un label (ligne de texte) contenant le texte
    # Note : le premier paramètre passé au constructeur de Label est notre
    # interface racine
    # ensuite vient le texte qui sera écrit dans la zone etiquette
    # puis l'écart par rapport aux bords de l'etiquette ( padx: Marge horizontale entre les bords du widget et son contenu. pady: Marge verticale entre les bords du widget et son contenu 
    # foreground:couleur de l'écriture
    # background: couleur du fond
    # borderwidth: epaisseur de la bordure
    # relief = relief de la bordure : flat (plat) - raised(ressort vers extérieur) - sunken (enfoncé) - groove (triat en creux) - ridge (trait en relief)
    # height – Hauteur de l’étiquette en nombre de lignes (non en pixels). Si cette option n’est pas précisée, l’étiquette s’ajuste à son contenu.
    # width – Largeur de l’étiquette exprimée en nombre de caractères (non en pixels). Si cette option n’est pas précisée, l’étiquette s’ajuste à son contenu.
    champ_label003 = Label(fenetre, text= texte003, padx="0", pady="4", foreground="#892222", background="#FFAAAA", borderwidth= 5, relief= "ridge", height= 10, width= 80) # text est l'option représentant le texte affiché par le label
 
    # On affiche le label dans la fenêtre par la méthode pack
    # les boutons, champs de texte, cases à cocher, barres de progression etc... sont appelés widgets
    champ_label003.pack()
    """ on place le champ_label en haut au centre de la fenêtre par la méthode place() """
    champ_label003.place(x=(w*pourcent/100), y=h*pourcent-(h-480))    
 
# fin de la fonction creation_fenetre()
def boucle_fenetre():
    """ on crée la boucle infinie qui teste si une touche ou un clic de souris etc... a lieu pour déclencher un évènement prédéfini auparavant """
    fenetre.mainloop()
 
# création menu pour fenêtre
# def barre_de_menus():
def alert1():
   messagebox.showinfo("menu1", "c'est le résultat de menu1 !")
 
def alert2():
   messagebox.showinfo("menu2", "c'est le résultat de menu2 !")
 
def alert3():
   messagebox.showinfo("menu3", "c'est le résultat de menu3 !")
 
def alert4():
   messagebox.showinfo("menu4", "c'est le résultat de menu4 !")
 
def alert5():
   messagebox.showinfo("menu5", "c'est le résultat de menu5 !")
 
def alert6():
   messagebox.showinfo("faire quleque avec à propos", "c'est le résultat de l'à propos !")
 
 
# création menu pour fenêtre
def barre_de_menus():
    menubar = Menu(fenetre, background="green")
 
    menu1 = Menu(menubar, tearoff=0, background="green")
    menu1.add_command(label="sous-menu1", command=alert1)
    menu1.add_command(label="sous-menu2", command=alert2)
    menu1.add_separator()
    menu1.add_command(label="Quitter", command=fenetre.destroy)
    menubar.add_cascade(label="premier menu", menu=menu1)
 
    menu2 = Menu(menubar, tearoff=0, background="green")
    menu2.add_command(label="sous-menu3", command=alert3)
    menu2.add_command(label="sous-menu4", command=alert4)
    menu2.add_command(label="sous-menu5", command=alert5)
    menubar.add_cascade(label="deuxième menu", menu=menu2)
 
    menu3 = Menu(menubar, tearoff=0, background="green")
    menu3.add_command(label="A propos", command=alert6)
    menubar.add_cascade(label="Aide", menu=menu3)
 
    fenetre.config(menu=menubar)