2015-05-15 23 views
5

Sto creando la GUI di Tkinter e voglio aggiungere Windows CMD nel widget di tkinter. Vorrei usare la console per connettermi al database. Ho fatto qualche ricerca e ho trovato solo il modulo pyconsole, ma con alcuni bug:Come ottenere cmd nel widget di Tkinter

  • cls non ha intenzione di fare ciò che ci si aspetta;
  • la modifica non mostra un editor (provare invece a modificare la modifica);
  • prompt non viene eseguito nulla;
  • il comando di colore non è implementato;
  • anche il grande^C non è supportato (copia effettivamente il testo, invece di interrompere un processo).

Soprattutto^comando C è un'enorme limitazione per gli script SQL che voglio eseguire.

sono in grado di aprire la console in questo modo:

Popen(["cmd.exe"], creationflags=CREATE_NEW_CONSOLE) 

Ma con questo approccio non so come interagire con l'interfaccia grafica

anche il mio testo (è anche possibile?) widget può leggere l'output dalla riga di comando, ma devo anche scrivere in quella riga di comando, non solo leggerlo ...

C'è una possibilità di ottenere CMD regolare nel widget di Tkinter, che reagirà con il resto dei widget nella GUI?

Il comportamento desiderato sarebbe la console CMD sul lato destro, come si può vedere nella figura seguente (nella finestra di tkinter), che interagirebbe con la casella di riepilogo a sinistra. Non sto cercando il codice esatto (ecco perché non ho indicato il mio codice qui), ma metodo/soluzione su come mettere CMD in tkinter.

Foto: enter image description here enter image description here

Grazie

Honza

risposta

1

penso che si può utilizzare una voce per immettere i comandi che si desidera eseguire. Quindi è possibile utilizzare subprocess.run e subprocess.Popen per eseguire i comandi e un testo o ancora meglio un widget tkinter.scrolledtext.ScrolledText per visualizzare i risultati.

Problemi correlati