从另一个程序

时间:2017-12-03 14:38:50

标签: python user-interface tkinter

我正在为我的计算机科学A级课程制作一个库存控制系统。我遇到的问题是我不知道如何在点击Button1后让python启动另一个python程序。

from tkinter import *
top=Tk()

Button1= Button(top,text='UPDATE STOCK', width=40)
Button1.place(x=80, y=20)

mainloop()

3 个答案:

答案 0 :(得分:0)

from Tkinter import Tk, Button, mainloop
import subprocess

def ext_python_script(event):
    subprocess.call(["python2.7", "sss.py"])   

if __name__ == '__main__':
    top = Tk()

    Button1 = Button(top, text='UPDATE STOCK', width=20, height=10)
    Button1.place(x=10, y=20)
    Button1.bind("<Button-1>", ext_python_script)

mainloop()

我们可以在这里使用bind。

答案 1 :(得分:0)

import os
from tkinter import*
import subprocess

def otherlaunch():
    subprocess.call(['python.exe', "filename.py"]) # filename.py is the file

top=Tk()

top.title('Stock Control')
top.geometry('400x200')

Button1= Button(top,text='UPDATE STOCK', width=40,command=otherlaunch)
Button1.place(x=80, y=20)


mainloop()

答案 2 :(得分:0)

您可以使用import语句从另一个加载一个python程序,并使用command参数在按钮单击时执行某些操作,如下所示:

import os 
from tkinter import*
top=Tk()

top.title('Stock Control')
top.geometry('400x200')

def run_other():
    import filename  #notice that it is not a string, and there is no '.py'

Button1= Button(top,text='UPDATE STOCK', width=40, command=run_other)
Button1.place(x=80, y=20)


mainloop()