Torna indietro   Hardware Upgrade Forum > Software > Programmazione

I robot tagliaerba che nascono in Italia: visita nella sede (e nella fabbrica) di Stiga
I robot tagliaerba che nascono in Italia: visita nella sede (e nella fabbrica) di Stiga
Abbiamo avuto l'opportunità di visitare la sede di Stiga, azienda che a Castelfranco Veneto ha la sua sede operativa e produttiva, dove nascono tanti prodotti per la cura del verde, tra cui i nuovi robot autonomi
Nutanix .NEXT 2024: oltre l'iperconvergenza per rimpiazzare VMware
Nutanix .NEXT 2024: oltre l'iperconvergenza per rimpiazzare VMware
Nutanix dà appuntamento a Barcellona per la sua conferenza .NEXT. Incontriamo vari esponenti dell'azienda, tra cui il CEO, e molteplici clienti per capire come Nutanix stia affrontando questo periodo di grossi cambiamenti, dettati sia dall'acquisizione di VMware da parte di Broadcom, sia dall'arrivo dell'IA, ormai onnipresente. È una di quelle occasioni in cui davvero si respira il vento del cambiamento
OMEN Transcend Gaming Laptop 14: compatto, leggero e una potenza con compromessi
OMEN Transcend Gaming Laptop 14: compatto, leggero e una potenza con compromessi
OMEN Transcend 14 è un notebook gaming che cerca di unire tanti aspetti positivi in un formato compatto, piuttosto leggero e con un look distintivo. Uno schermo OLED, una CPU Core Ultra 9 e una GeForce RTX 4070, seppur fortemente limitata, sono gli ingredienti di questo prodotto: sarà uscito un buon mix?
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-09-2023, 08:29   #1
steno12
Junior Member
 
Iscritto dal: Sep 2023
Messaggi: 6
[Python] All'avvio non visualizza la finestra

Buongiorno a tutti

spero sia postato bene il codice.

voglio digitare quindi intercettare il tasto premuto e scriverlo in una label
la label dove scrivere è "welcome_label1"

ok

ma se lancio il codice non visualizza la finestra e qu8indi non posso fare nulla.

Ma... leggi sotto...


Codice:
import tkinter as tk
from pynput import keyboard  
import keyboard
from pynput.keyboard import Key, Controller 
from pynput.keyboard import Listener  

key = 0

# instantiating the Controller class  
the_keyboard = Controller()  

# using the press() and release() methods  
# the_keyboard.press('x')  
# the_keyboard.release('x')  

window = tk.Tk()
window.geometry("600x600")
window.title("Hello TkInter!")
window.resizable(False, False)
window.configure(background="white")


def close_window():
   window.destroy()

  
def first_print():
    text = "Hello World!"
    text_output = tk.Label(window, text=text, fg="red", font=("Helvetica", 16))
    text_output.grid(row=10, column=60, sticky="W")
    

first_button = tk.Button(text="Saluta!", command=first_print)
first_button.grid(row=10, column=5, sticky="W")



terzo_button = tk.Button(text = "Click and Quit", command = close_window)
terzo_button.grid(row=10, column=30, sticky="W")




def on_press(key):

   welcome_label1 = tk.Label(window,
                         text=key,
                         font=("Helvetica", 10))
   welcome_label1.grid(row=10, column=10, sticky="N", padx=20, pady=10)



with Listener(
        on_press=on_press) as the_listener:
      #  on_release=on_release) as listener:
      the_listener.join()

if __name__ == "__main__":
               window.mainloop()


se levo la funzione def on_press(key): e tolgo:

Codice:
with Listener(
        on_press=on_press) as the_listener:
      #  on_release=on_release) as listener:
      the_listener.join()
giustamente la finestra si crea

dove sbaglio?

mi sto riavvicinando alla programmazione con python, dall'ultimo post fatto, ci ho messo giorni a capire di intentare il code in python se no avevo errori azzz ):.

Stavo per lasciare perdere in quanto molto frustrato ma non voglio mollare.

Grazie per l'aiuto
steno12 è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2023, 11:38   #2
x_Master_x
Senior Member
 
L'Avatar di x_Master_x
 
Iscritto dal: May 2005
Messaggi: 8686
Studia da internet, prendi un libro python. Nessuno dice che devi mollare, ma mi dai l'impressione di andare a "sentimento"

Ecco un esempio funzionante:
Codice:
import tkinter as tk
from pynput.keyboard import Key, Listener

def close_window():
    window.destroy()

def first_print():
    global entered_text
    text = "Hello World!"
    entered_text = text
    update_text_output()

def on_press(key):
    global entered_text
    if key == Key.space:
        entered_text += " "
    elif hasattr(key, 'char'):
        entered_text += key.char
    update_text_output()

def update_text_output():
    text_output.config(text=entered_text)

def main():
    global window, entered_text, text_output 

    window = tk.Tk()
    window.geometry("600x600")
    window.title("Hello World!")
    window.resizable(False, False)
    window.configure(background="white")

    entered_text = ""

    first_button = tk.Button(text="Saluta!", command=first_print)
    first_button.grid(row=10, column=5, sticky="W")

    terzo_button = tk.Button(text="Click and Quit", command=close_window)
    terzo_button.grid(row=10, column=30, sticky="W")

    text_output = tk.Label(window, text="", fg="red", font=("Helvetica", 16))
    text_output.grid(row=10, column=60, sticky="W")

    with Listener(on_press=on_press) as the_listener:
        window.mainloop()

if __name__ == "__main__":
    main()
__________________
.
Thread Ufficiali: EasyCrypt ~ Old Files Manager ~ OSD Clock
The real me is no match for the legend
.
x_Master_x è offline   Rispondi citando il messaggio o parte di esso
Old 28-09-2023, 16:14   #3
steno12
Junior Member
 
Iscritto dal: Sep 2023
Messaggi: 6
Azzz... spettacolo! funzionante Grazie x_Master_x

si certo studiare sul web ma ci sono cose nel flusso che possono bloccarti.

però devo capire:

avevo scritto:
Codice:
if __name__ == "__main__":

        window.mainloop()
mentre tu scrivi:

Codice:
        window.mainloop()

if __name__ == "__main__":
    main()
main() riporta al main questo lo capisco ma non capisco dove porta
window.mainloop() ?

infatti se la tolgo sono daccapo
steno12 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


I robot tagliaerba che nascono in Italia: visita nella sede (e nella fabbrica) di Stiga I robot tagliaerba che nascono in Italia: visita...
Nutanix .NEXT 2024: oltre l'iperconvergenza per rimpiazzare VMware Nutanix .NEXT 2024: oltre l'iperconvergenza per ...
OMEN Transcend Gaming Laptop 14: compatto, leggero e una potenza con compromessi OMEN Transcend Gaming Laptop 14: compatto, legge...
HUAWEI Pura 70 Ultra: il cameraphone è di nuovo tra noi con un ma! Recensione  HUAWEI Pura 70 Ultra: il cameraphone è di...
Edge 50 Ultra: Motorola convince anche con il suo top di gamma! La recensione Edge 50 Ultra: Motorola convince anche con il su...
La nuova fotocamera mirrorless Nikon Z 6...
Dragon Age: The Veilguard, il nuovo RPG ...
Monopoly arriva su PC e console: meccani...
Alan Wake 2: Full Ray Tracing e DLSS 3.5...
Attacco hacker di massa ai clienti di Sn...
Blackmagic URSA Cine Immersive: video pe...
Apple WWDC 2024: ecco tutto quello che h...
Destiny 2, tutto ciò che verr&agr...
Virgin Galactic completa la missione Gal...
C'è un modo per acquistare Samsung Galax...
Dark Rock 5: da be quiet! un nuovo dissi...
Prince of Persia: riemerge il remake de ...
Il prossimo lancio di SpaceX Starship po...
Elon Musk tuona: rischio ban per i dispo...
Canon a tutta VR con un'ottica per i con...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:45.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Served by www2v