2016-03-23 13 views
0

Bu kod, KDV Hesap Makinesi Programımın ana menü ekranının bir sınıfında gerçekleşir. Giriş kutularından değerler almakta sorun yaşıyorum.

İlk birkaç satır, Giriş kutuları tarafından kullanılacak metin değişkenlerini başlatır.

RefNumCur = StringVar() 
    AddressCur = StringVar() 
    DateCompCur = StringVar() 
    DateBankCur = StringVar() 
    JobSourceCur = StringVar() 
    JobTypeCur = StringVar() 
    AmountCur = StringVar() 

Burada, değerler bir veritabanına kaydedilmeden önce bir geçerlilik algoritması zinciri başlatan bir işlev yapıyorum. Ama önce giriş kutularından değerleri almam gerekiyor.

def SaveEntry(*args): 
     RefNumCur = RefNumEntry.get() 
     AddressCur = AddressEntry.get() 
     DateCompCur = DateCompEntry.get() 
     DateBankCur = DateBankEntry.get() 
     JobSourceCur = JobSourceEntry.get() 
     JobTypeCur = JobTypeEntry.get() 
     AmountCur = AmountEntry.get() 

     CheckRefNum(RefNumCur) 

Giriş kutularını burada yaptım ve yerleştirdim.

RefNumEntry = Entry(textvariable = RefNumCur).grid(row = 2,column =3, columnspan = 2) 
    AddressEntry = Entry(textvariable = AddressCur).grid(row = 3,column = 3, columnspan = 2) 
    DateCompEntry = Entry(textvariable = DateCompCur).grid(row = 4,column =3, columnspan = 2) 
    DateBankEntry = Entry(textvariable = DateBankCur).grid(row = 5,column = 3, columnspan = 2) 
    JobSourceEntry = Entry(textvariable = JobSourceCur).grid(row = 6, column =3, columnspan = 2) 
    JobTypeEntry = Entry(textvariable = JobTypeCur).grid(row = 7, column =3, columnspan = 2) 
    AmountEntry = Entry(textvariable = AmountCur).grid(row = 8,column = 3, columnspan = 2) 

cevap

1

grid döner None. (Aynı için pack, place)

Böyle satırları ayırmak gerekir:

RefNumEntry = Entry(textvariable=RefNumCur).grid(row=2, column=3, columnspan=2) 

içine:

RefNumEntry = Entry(textvariable=RefNumCur) 
RefNumEntry.grid(row=2, column=3, columnspan=2) 

Aksi takdirde RefNumEntry yerine Entry nesnenin None sevk edecektir.

İlgili konular