2010-11-18 32 views
1

Penceresi oluşturan küçük bir modül var (program1). Bunu başka bir python programına aktarmak istiyorum (program2).Python sınıfları içe aktarılıyor

Bunu nasıl yapabilirim? Böylece program1 tarafından program1 yapıldığında bir pencere açabilirim?

Modülü almak istiyorum (program1).

import Tkinter 

class Class(Tkinter.Tk): 

    def __init__(self, parent): 

     Tkinter.Tk.__init__(self, parent) 
     self.parent = parent 

     self.Main() 

    def Main(self): 
     self.button= Tkinter.Button(self,text='hello') 
     self.button.pack() 



if __name__ == "__main__": 
    app = Class(None) 
    app.mainloop() 

Düzenleme

nasıl programı 2 işlev çağrısı self.Main() o PROGRAM1 öyle yapmak yapabilirim?

Ayrıca, programlar arasında değer aktarımı hakkında nasıl giderim?

Program1'de söyleyin x = 'merhaba', program2'de x değerini nasıl alırım?

+0

Düzenlenen sorular muhtemelen olmalıdır ayrı sorular. – aaronasterling

cevap

4

sonra, PROGRAM2 gelen mainloop çalıştırmak isterseniz: Daha az çoğaltma için,

import program1 
app = program1.Class(None) 
app.mainloop() 

ya:

# program1.py 
... 
def main(): 
    app = class(None) 
    app.mainloop() 

if __name__ == "__main__": 
    main() 

ve sonra

# program2.py 
import program1 
program1.main() 
+0

İyi şeyler, bakın Düzenle Birkaç sorum var. – rectangletangle

İlgili konular