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
| #! /usr/bin/python3
# -*- coding: utf-8 -*-
# importer Tkinter
from tkinter import *
from tkinter import ttk
# importer le contenu des onglets
import onglet1_UI
import onglet2_UI
import onglet3_UI
def clrlog():
log.delete('1.0', END)
def tstlogrx():
log.insert(END, "Test Reception\n")
def tstlogtx():
log.insert(END, "Test Emission\n")
# Creation de la fiche
form = Tk()
form.title("exemple_TKinter_modules")
form.geometry('800x480')
# organisation en onglets
tabs = ttk.Notebook(form)
# Tab1
tab1 = ttk.Frame(tabs)
tabs.add(tab1, text=' [Onglet 1] ')
# Tab2
tab2 = ttk.Frame(tabs)
tabs.add(tab2, text=' [Onglet 2] ')
# Tab3
tab3 = ttk.Frame(tabs)
tabs.add(tab3, text=' [Onglet 3] ')
#tabs.select(tab2) # A RETIRER (focus sur onglet 2)
tabs.pack(expand=1, fill="both")
# -------------------------------- WIDGETS ONGLET 1 --------------------------------
onglet1_UI.plan(tab1)
# -------------------------------- WIDGETS ONGLET 2 --------------------------------
onglet2_UI.conso(tab2)
# -------------------------------- WIDGETS ONGLET 3 --------------------------------
log = Text(tab3, width=30, height=10, bg='black', fg='limegreen')
log.pack(side=LEFT, fill='y') # log.pack(anchor='w', fill='y', expand=True)
# bouton qui efface le journal
btnclrlog = Button(tab3, text="Effacer", command=clrlog)
btnclrlog.pack(side=LEFT, anchor='n', padx=10, pady=10)
# boutons provisoirs destinés à simuler l'émission/reception de données dans le log
btntestrx = Button(tab3, text="sim_rx", command=tstlogrx)
btntestrx.pack(side=LEFT, anchor='n', padx=10, pady=10)
btntesttx = Button(tab3, text="sim_tx", command=tstlogtx)
btntesttx.pack(side=LEFT, anchor='n', padx=10, pady=10)
# On démarre la boucle Tkinter qui s'interompt quand on ferme la fenêtre
form.mainloop() |
Partager