Python внутренний терминал сокращается
Моя проблема где-то в моем коде, но я не могу найти где, проблема в том, что когда я нажимаю одну из кнопок, окно xterm, встроенное в программу, изменяет размер между двумя кнопками (размер которых крошечный)
import Tkinter
from Tkinter import *
import subprocess
import os
from os import system as cmd
def test():
os.system('sudo xterm -into %d -geometry 200x40 -sb -e overscan &' % wid)
def sysinfo():
os.system('xterm -into %d -sb -e systeminfo &' % wid)
def ipconf():
os.system('xterm -into %d -sb -e ipconfig &' % wid)
def grpmw():
os.system('xterm -into %d -geometry 0x0 -sb -e firefox -height 900 -width 1440 *snip*' % wid)
def lout():
os.system('xterm -into %d -sb -e pkill python' % wid)
def rboot():
os.system('xterm -into %d -sb -e sudo reboot' % wid)
def pwoff():
os.system('xterm -into %d -sb -e sudo poweroff' % wid)
WINDOW_SIZE = "1440x900"
top = Tkinter.Tk()
top.geometry(WINDOW_SIZE)
Button1 = Tkinter.Button(top, text ="Systeem informatie opvragen", command=sysinfo)
Button1.pack(side=LEFT, anchor=NW)
Button2 = Tkinter.Button(top, text ="IP adres achterhalen", command=ipconf)
Button2.pack(side=LEFT, anchor=NW)
Button3 = Tkinter.Button(top, text ="Zwarte balken weghalen", command=test)
Button3.pack(side=RIGHT, anchor=N )
Button4 = Tkinter.Button(top, text = "21 Groep Myworkplace", command = grpmw)
Button4.pack(side=RIGHT, anchor=N )
Button6 = Tkinter.Label(top, text = " ")
Button6.pack(side=RIGHT, anchor=N )
Button5 = Tkinter.Button(top, text = "Uitloggen", command = lout)
Button5.pack(side=RIGHT, anchor=N )
Button7 = Tkinter.Label(top, text = " ")
Button7.pack(side=LEFT, anchor=N )
Button8 = Tkinter.Button(top, text = "Herstarten", command = rboot)
Button8.pack(side=LEFT, anchor=N )
Button9 = Tkinter.Button(top, text = "Afsluiten", command = pwoff)
Button9.pack( )
termf = Frame(top, height=1000, width=1000)
termf.pack(fill=BOTH, expand=YES)
wid = termf.winfo_id()
def send_entry_to_terminal(*args):
"""*args needed since callback may be called from no arg (button)
or one arg (entry)
"""
cmd("%s" % (BasicCovTests))
if __name__ == "__main__":
top.title('KEUZE MENU')
top.mainloop()
------------------ изменить 1------------------
Я заметил, что мой пост был неясным, я прошу прощения, это то, что я имею в виду. Каким-то образом, когда я нажимаю одну из кнопок, она застревает между краями кнопки "afsluiten".
Но когда я удаляю метки, рамка меняет размер до более работоспособного размера, как показано на этом скриншоте
------------------ изменить 2------------------
Так что... я думаю, у меня все получилось, я точно не знаю, потому что у меня черный экран, я обнаружил, что когда вы используете, скажем, side=LEFT, дважды он блокирует левую сторону экрана от начала от первой кнопки до конца второй кнопки, что делает всю область непригодной для использования, поэтому я использовал сетку, проблема в том, что терминал выходит за пределы экрана, поэтому я сделал ребенка с помощью пакета, и теперь у меня черный экран, хахаха, плохо держу вы, ребята, обновились