Class A(): #class关键字首字母要小写 def GetEntryValues(): #类中的方法要添加self作为参数,或者使用staticmethod声明成静态函数 InputValue = InputPathget() print InputValue return InputValue def OpenInputValue(): #类中的方法要添加self作为参数 print "sdsdsd" GetEntryValues() #调用类中方法的时候,如果是实例方法,需要使用self调用,如果是静态方法,需要类名调用 mainFrame = Tk()frame1 = Frame(mainFrame)frame1pack()InputPath = Entry(frame1)InputPathpack(side=LEFT)GoButton = Button(frame1, text='open', command=OpenInputValue) #OpenInputValue是类中的方法,需要使用实例或者类名调用GoButtonpack(side=LEFT)mainFramemainloop()
如果我没有理解错的话,看样子你应该不需要net,就是自己的一个程序想要个图形界面而已。
我自己曾经也想给自己的程序添加图形界面,但是后来放弃了!因为尝试后发现太麻烦!比matlab写图形界面麻烦多了……最后我是用的后面加参数的调用方法,图形界面还是用vb开发好……反正用linux的根本不在乎图形界面。
扯远了……总体来说,python的图形界面最常用的就是两个,自带的tkinter(tcl/tk)和第三方的WxPython。后者比前者强大很多倍。不过,反正我自己觉得你用第一个也够了,还可以缩小体积增加兼容性。wxpython很强大,而且熟悉后开发很快。关键就是熟悉他麻烦,太多要学的了。听咱的,看几个简单例子用tkinter搞定得了……
好吧。tkinter大致过程如下。我个人觉得太小的程序就不用分成多个py文件了(反正我习惯不好),因为tkinter里面,定义窗体是一个tkinter的实例,然后再mainloop表示界面结束后,你可以随便定义自己的方法什么的。(为什么我总是跑题啊啊啊……)
咳咳。给你几个例子吧。
==============================================
强调:详细内容必须自己看说明!我会在文末和参考文献中给出!
当然,这个回答推荐你复制到具有语法加亮的编辑器中看,比如notepad++之类。
================================================
#首先是Fredrik Lundh版本的hello world,这是最简单的版本:
# File: hello1py
from Tkinter import
root = Tk()
w = Label(root, text="Hello, world!")
wpack()
rootmainloop()
# root=Tk()将创建一个窗体。然后wpack()的时候将内容更新上去。这句是最重要的一句,无论如何都少不了的。在后面的例子中你会注意到一开始定义了很多窗体的东西,但是最后都会用这句来生成窗体。然后用mainloop()来接收 *** 作。当然,这会彻底占用这个线程。
#================================
#再来看python官方doc文档里面的hello world,这个实力包含了大多数元素。
from Tkinter import
class Application(Frame):
def say_hi(self):
print "hi there, everyone!"
def createWidgets(self):
selfQUIT = Button(self)
selfQUIT["text"] = "QUIT"
selfQUIT["fg"] = "red"
selfQUIT["command"] = selfquit
selfQUITpack({"side": "left"})
selfhi_there = Button(self)
selfhi_there["text"] = "Hello",
selfhi_there["command"] = selfsay_hi
selfhi_therepack({"side": "left"})
def __init__(self, master=None):
Frame__init__(self, master)
selfpack()
selfcreateWidgets()
root = Tk()
app = Application(master=root)
appmainloop()
rootdestroy()
#这个实例里面包括了按钮,如何调用自己的方法,等等。但是没有文本框和菜单等。
#我想我不应该把所有的东西都写在这里了,比较这里面的东西很多,需要你自己学一下。
#但是相信我,这个学起来不wxpython容易多了,因为有很多写的很好的教程。
#除非,你英语不好。但是这也不会影响太多,因为把第一个教程(An Introduction to Tkinter ——by Fredrik Lundh)中的例子一个一个做一次你就明白了每个语句是什么用的了。
===========================
参考资料(一定要去看哦!比去论坛和邮件组方便多了!):
1An Introduction to Tkinter ——by Fredrik Lundh
online:>
当你想学习一门新的语言时,特别是像Python这样的脚本语言,在你准备充分开始写应用程序的图形化界面之前,有时候你可能被迫使用应用程序的控制台。从第一版商业图形界面发行以来(感兴趣的话,可以查看Xerox之星),至今经过了25年的时间,在应用程序上继续使用控制台看上去似乎有点古老。非常感谢Python脚本语言强调简洁的语法,这意味着你不需要成为Python编程高手就能在程序中使用图形用户界面。为了证明这个说法,我将使用Python标准的GUI(图形用户界面)工具:Tk来建立一个简单的记录会话程序。我不会详细介绍Python的简单语法,如果你有不明白的地方,请你阅读我先前关于这个主题的文章(点击这里和这里就可以查看);让我们从基本的开始讲起,首先你需要输入Tk界面到你的程序命名空间中。因为我们将会不断地引用到Tk窗口小部件,我们不希望一直用一个包来限定它们,所以最好的方法就是这样做:from Tkinter import 这个导入语句与传统的导入语句的区别在于,它在模块中将所有的东西导入程序默认的命名空间,而不是在你需要引用一个像TkinterTextbox文本框的时候,你就只能写文本框。现在我们来建立根窗口并设置它的标题来解释一些东西:root = Tk()roottitle("Note Taker")创建根窗口就像创建一个Tk类的实例一样简单,它会装载图形工具包并提供给我们一个可以装载窗口小部件的空白窗口。这是启动一个Tk程序基本过程的第一部分。rootmainloop()第二部分(上面所显示的)是调用Tk主循环(mainloop),这个主循环是用来处理事件的,比如键盘事件或者鼠标输入,允许用户与对话框交换信息。事实上,这时候你才真正地用到了GUI程序。用那四种方式运行一个python脚本,将d出一个窗口,但是这个窗口仅仅是放置在那里,它不会做任何 *** 作。
重命名时黑框出现闪退。
第一步首先找到我们平时编辑python后,将文件储存的所在文件夹的位置,尝试下双击,看是否能打开。第二步如果打不开或者闪退,可以尝试选择打开方式,选择Python应用程序或者文本编译器看看是否能够打开文件。如果尝试了双击,未打开,接着选择打开方式pthon,还是失败。然后选择平时的文本编译器Geany,成功打开了命名为comment。py的python文件。
第三步尝试用文本编译器执行该python文件,看看能否运行。结果显示可以成功运行。第四步尝试在完成后的程序末尾加上函数input(),加入这个函数后,相当于在等待你输入,这是一个还未完结的程序。再选择保存。第五步退出geany编译器,再次找到该python文件,尝试双击或者选择python程序打开该文件。问题就解决了。
1、打开cmd命令行窗口,输入命令“python”,回车即可。
2、在开始菜单的搜索框中输入python。
3、然后在搜索结果中找到并点击“IDLE应用”,打开Python37shell窗口即可。
我也遇到了这个问题,我是这样解决的。
你用python调用bat或者exe文件时,一般调用 方式如下:
ossystem(被调用程序)
对吧,这样就会因为调用了系统shell而出现黑框。
我的解决方法是:
ospopen(被调用程序)
这样就把程序作为后台调用了,而且能根据popen的返回结果来获得程序的返回值。
以上就是关于python应用程序中,创建按钮时,调用框架类frame的哪一个方法全部的内容,包括:python应用程序中,创建按钮时,调用框架类frame的哪一个方法、python程序的窗口化、如何用python脚本语言写带窗口程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)