Bonjour à Tous,
Je suis débutant en programmation. Du genre qui n'y connais rien avant de commencer.
J'ai effectué une recherche sur l'outil le plus adéquate pour commencer. Voyant que finalement chaque langage avait ses avantages et défauts, je me suis tourné vers Python. Effectivement il semble facile d'accès, en tout cas pour le moment. Et pour ce que je veux en faire, la programmation n'est pas ma profession, je pense que cela devrait me suffire.
Pour commencer je me suis donc fixer un petit projet personnel après avoir lu, au moins en partie, et effectuer les exercices de bases de plusieurs documentations trouvées sur cet excellent site.
En quelques mots mon projet est le suivant:
* J'ai un récepteur GPS qui me fourni un string avec, entre autre, l'heure, via le port série. Un string chaque seconde.
* je veux afficher, en gros, l'heure UTC et l'heure locale.
Dans un deuxième temps, je voudrais en plus:
* afficher quelques paramètres liés aux satellites disponibles et à la qualité du lien série,
* mettre à jour cycliquement l'heure du PC pour en faire un serveur NTP
Dans un premier temps je me suis concentré sur l'affichage en réservant des variables pour l'affichage.
Je me suis attelé à vouloir:
a/ que la fenêtre principale prenne la totalité de l'écran,
b/ que la fenêtre principale soit divisée en 3 lignes proportionnelles,
c/ que les 2 lignes du haut soient divisées en 2 colonnes: la case de gauche l'intitulé (UTC ou LOCAL, suivant la ligne), la case de droite la valeur
d/ que la police de caractère s'adapte à la taille de la case.
e/ pour le moment je ne m'occupe pas de la 3eme ligne. se sera celle des options.
J'arrive à a/, b/ c/ mais le d/ me pose problème. La taille de la police ne s'adapte pas à la taille de la cellule. C'est plutôt l'inverse. Du coup ma disposition d'écran n'est plus bonne.
début code
Fin code.
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 #fenetre de GUI 1 from tkinter import * #création du widget principal fenetre_master=Tk() fenetre_master.wm_iconbitmap("@icon_SM.xbm") # Utilise l'icon SM fenetre_master.wm_state(newstate="zoomed") # Affiche la fenetre principale en plein écran fenetre_master.title("Temps GPS") # Donne le titre de la fenêtre fenetre_master_hauteur=fenetre_master.winfo_reqheight() fenetre_master_largeur=fenetre_master.winfo_reqwidth() label_font_1=("Arial", int(fenetre_master_hauteur/5),"bold") # Création de la fenêtre secondaire désignation "UTC" utc=Label(fenetre_master, text=fenetre_master_hauteur) # intitulé de la ligne utc.config(bg="blue",fg="green") utc.config(height=1, width=int(fenetre_master_largeur/10)) utc.config(font=label_font_1, anchor=E) utc.grid(row=0, column=0) # Création de la fenêtre secondaire contenu "UTC" date_heure_utc=Label(fenetre_master, text="Heure UTC") # création de la fenetre d'affichage de l'heure utc date_heure_utc.config(bg="yellow",fg="blue") date_heure_utc.config(height=int(fenetre_master_hauteur/50), width=int(fenetre_master_largeur/10*9)) date_heure_utc.config(font=label_font_1, anchor=W) date_heure_utc.grid(row=0, column=1) # Création de la fenêtre secondaire "Local" local=Label(fenetre_master,bg="green", height=int(fenetre_master_hauteur/10), width=int(fenetre_master_largeur/10), anchor=E, text="Local")# intitulé de la ligne date_heure_local=Label(fenetre_master, bg="red", height=int(fenetre_master_hauteur/10), width=int(fenetre_master_largeur*9/10), anchor=W, text="Heure locale") # Création de la fenetre d'affichage de l'heure locale local.grid(row=1, column=0) # Positionnement de l'intitulé sur la ligne 1 date_heure_local.grid(row=1, column=1) # positionnement de la fenetre d'entrée sur la ligne 1 et colonne 1 fenetre_master.mainloop()
Quelqu'un aurait-il déjà été confronté à ce PB?
Quelle solution adoptée?
Merci
Bien cordialement.
Partager