如何从python中的类调用方法

时间:2015-10-26 22:15:43

标签: python tkinter

如何在下面的代码中调用类bio_info中的方法Acceptor

import sys
import Tkinter
from Tkinter import *
from tkMessageBox import *
from tkSimpleDialog import *


class Acceptor():

    def bio_info(self):

    #this method takes in input from the keyboard console

        def__init__(self,name,mat_no,semester)
        self.name=name
        self.mat_no=mat_no
        self.semester=semester


        Label(top,text='Name').grid(row=0)
        Label(top,text='Matric No').grid(row=1)
        Label(top,text='Semester').grid(row=2)

        name=Entry(top)
        mat_no=Entry(top)
        semester=Entry(top)


        name.grid(row=0,column=1)
        mat_no.grid(row=1,column=1)
        semester.grid(row=2,column=1)

        return name
        return mat_no
        return semester    


main = Tk()

#This defines the size of the main window
main.geometry('640x480')

    #This takes care of the configuration of the main window, buttons and labels inclusive
main.title('Result Calculator App')
mainLabel=Tkinter.Label(main,text='Result Calculator',bd=10, relief=RIDGE,fg='cyan')
mainLabel.pack(fill=BOTH)
mainLabel.config(font=('algerian',35, 'bold'), bg='blue',fg='orange')
calculate=Button(text="CALCULATE",font=('joan',20,'bold'),bg='black',fg='green',width=15,cursor='hand2',relief=SOLID,
command=Acceptor.bio_info)
calculate.pack()


print'This program ran correctly'
main.mainloop()

3 个答案:

答案 0 :(得分:0)

你可以像调用python中任何其他类中的任何其他方法一样调用它。您创建该类的实例,然后在实例上调用该方法:

acceptor = Acceptor()
...
calculate=Button(..., command=acceptor.bio_info, ...)

答案 1 :(得分:0)

您需要创建该类的实例并从该实例调用该方法。例如:

myAcceptor = Acceptor()
myAcceptor.bio_info()

答案 2 :(得分:0)

正如teckydesigner所说,你需要先创建一个类的实例才能使用它。  您的代码command = Acceptor.bio_info将无法编译,因为bio_info是一种方法,需要像myAcceptor.bio_info()一样调用。

相关问题