Forum >> Principianti >> Impostazione interfaccia grafica

Pagina: 1

Salve a tutti , non sono nuovissino a Python , ma l'ho usato pochissimo... quasi nulla.
Ora volevo creare un piccola interfaccia grafica con delle label e degli input.
Ho però riscontrato delle difficoltà con la gestione delle righe e colonne, ho notato che se nella colonna (ex.la 3) io non ci metto nulla (neppure uno spazio) lui mi attacca comunque la colonna 2 con la quattro (senza spazi).
Io , nella mia ignoranza, ho SEMPLICEMENTE aggiunto un spazio nella colonna 3 cosi che il programma me la visualizzi , lasciandomi uno spazio.
Ma è questo l'unico modo per fare ciò ?? Premetto che la schermata è organizzata con il "comando" .GRID . (utilizzo tkinter)
Accettasi suggerimenti e anche critiche.
Grazie

Alberto
------
Alberto
Ciao caro, dovresti dare a chi ti vuole aiutare, qualche informazione in più.

1. Su che piattaforma sei?
2. Che versione del linguaggio usi?
3. Che libreria?

Poi se posti un po' di codice magari più facile capire quale difficoltà hai incontrato.

Cya
Ciao, allora io utilizzo Windows 10 con Python 3.6 e poi andro' a usare il programma con Raspberry con python 3.5 con lo schermino ufficiale da 7".
Come da te richiesto allego un parte del programmino che chiaramente è una bozza (fatta anche x tentativi).
Come si vede chiaramente sto inserendo delle funzioni che mi serviranno ma non sono complete.

Il mio quesito precendente riguarda l'incolonnamento delle label "gialle" e la strana reazione dell'ultima label gialla in basso a sx; se io gli dico di partire dalla colonna 10 e di farla larga 9 caratteri .... perchè me la centra invece di andare verso destra ??
Non so se mi sono spiegato
Grazie
Alberto
try:
    from Tkinter import *
except:
    from tkinter import *

def chiama_about():
    message.showinfo(title="About",message="Lamia finestra 1.0")

def uscita():
    risposta = message.askyesno(title="Uscita",message = "Vuoi davvero uscire")
    if risposta:
        root.destroy()

def Somma():
	a=primo_numero.get() + ((primo_numero.get()/100) * secondo_numero.get())
	lcalctot.config(text =a)
	   
root = Tk()
root.title("Lettura Parametri Schede CNC")

# creare un menu
barra_menu = Menu(root)
menu_file=Menu(barra_menu,tearoff=0)
barra_menu.add_cascade(label="File",menu = menu_file)
menu_file.add_command(label="Nuovo")
menu_file.add_command(label="Apri" )# command = apri_file
menu_file.add_command(label="Salva")
menu_file.add_command(label="Esci",command = uscita)
root.config(menu = barra_menu)

menu_about=Menu(barra_menu,tearoff=0)
barra_menu.add_cascade(label="About",menu = menu_about)
menu_about.add_command(label="About",command = chiama_about)


primo_numero = IntVar(value = "")
secondo_numero = IntVar(value = "")

a = IntVar(value = "")

# Etichette
scheda1 = Label(root,text = "Scheda 1",bg = "white")
scheda2 = Label(root,text = "Scheda 2",bg = "white")
scheda3 = Label(root,text = "Scheda 3",bg = "white")

l1 = Label(root,text = "T° Ponte 1 :",bg = "white")
l2 = Label(root,text = "T° Ponte 2 :",bg = "white")
l3 = Label(root, text = "Tensione Alim. :" , bg = "white")
l4 = Label(root, text = "Corrente Ponte 1 :" , bg = "white")
l5 = Label(root, text = "Corrente Ponte 2 :" , bg = "white")

# Label di Output
# Label scheda 1 #
lscheda1_cponte1 = Label(root,text = "100" , width = 5 , bg = "yellow")
lscheda1_cponte2 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda1_vponte = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda1_iponte1 = Label(root,text = "45" , width = 5 , bg = "yellow")
lscheda1_iponte2 = Label(root,text = "" , width = 5 , bg = "yellow")

# Label scheda 2 #
lscheda2_cponte1 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda2_cponte2 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda2_vponte = Label(root,text = "25" , width = 5 , bg = "yellow")
lscheda2_iponte1 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda2_iponte2 = Label(root,text = "" , width = 5 , bg = "yellow")

# Label scheda 3 #
lscheda3_cponte1 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda3_cponte2 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda3_vponte = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda3_iponte1 = Label(root,text = "" , width = 5 , bg = "yellow")
lscheda3_iponte2 = Label(root,text = "" , width = 9 , bg = "yellow")


# Spazi Orizzontali
so1 = Label(root, text = "")
so2 = Label(root, text = "")
so3 = Label(root, text = "")
so4 = Label(root, text = "")
so5 = Label(root, text = "")
so6 = Label(root, text = "")
so7 = Label(root, text = "")

# Spazi Venticali
sv1 = Label(root, text = "",width =3)
sv2 = Label(root, text = "",width =3)
sv3 = Label(root, text = "",width =3)

#
#i1 = Entry(root,textvariable = primo_numero,width = 6,bg = "white")
#i2 = Entry(root,textvariable = secondo_numero,width = 3,bg = "white")

#### Sezione .grid
# Posizione Etichette
scheda1.grid(row = 0 , column = 2)
scheda2.grid(row = 0 , column = 6)
scheda3.grid(row = 0 , column = 10)

l1.grid(row = 2 , column = 0) # label
l2.grid(row = 4 , column = 0)
l3.grid(row = 6 , column = 0)
l4.grid(row = 8 , column = 0)
l5.grid(row = 10 , column = 0)

# Posizione Label Scheda 1 #
lscheda1_cponte1.grid(row = 2 , column = 2)
lscheda1_cponte2.grid(row = 4 , column = 2)
lscheda1_vponte.grid(row = 6 , column = 2)
lscheda1_iponte1.grid(row = 8 , column = 2)
lscheda1_iponte2.grid(row = 10 , column = 2)

# Posizione Label Scheda 2 #
lscheda2_cponte1.grid(row = 2 , column = 6)
lscheda2_cponte2.grid(row = 4 , column = 6)
lscheda2_vponte.grid(row = 6 , column = 6)
lscheda2_iponte1.grid(row = 8 , column = 6)
lscheda2_iponte2.grid(row = 10 , column = 6)

# Posizione Label Scheda 3 #
lscheda3_cponte1.grid(row = 2 , column = 10)
lscheda3_cponte2.grid(row = 4 , column = 10)
lscheda3_vponte.grid(row = 6 , column = 10)
lscheda3_iponte1.grid(row = 8 , column = 10)
lscheda3_iponte2.grid(row = 10 , column = 10)

# Posizione Spazi Orizzontali (righe)
so1.grid(row = 0 , column = 0) # spazi interlinea
so2.grid(row = 1 , column = 0)
so3.grid(row = 3 , column = 0)
so4.grid(row = 5 , column = 0)
so5.grid(row = 7 , column = 0)
so6.grid(row = 9 , column = 0)
so7.grid(row = 11 , column = 0) # dopo corrente 2

# Posizione Spazi Verticali (colonne)
sv1.grid(row = 0 , column = 3)
sv2.grid(row = 0 , column = 7)
sv3.grid(row = 0 , column = 11)


#i1.grid(row = 0 , column = 1) # input
#i2.grid(row = 2 , column = 1)


refr1 = Button(root,text ="Refresh 1", command = Somma , bg="white")
refr2 = Button(root,text ="Refresh 2", command = Somma , bg="white")
refr3 = Button(root,text ="Refresh 3", command = Somma , bg="white")

#ltot = Label(root,text = "Totale :",bg = "white")
#lcalctot = Label(root,text = "" ,width = 6,bg = "gray")

refr1.grid(row = 23 , column = 2)
refr2.grid(row = 23 , column = 6)
refr3.grid(row = 23 , column = 10)

#ltot.grid(row = 19 , column = 2)
#lcalctot.grid(row = 18 , column = 10)

root.mainloop()    

------
Alberto


Pagina: 1



Esegui il login per scrivere una risposta.