[Çözüldü] QLineEdit içerisindeki metni alma?

Başlatan ankyra, 10 Kasım 2015 - 11:29:02

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ankyra

class kayitolustur(QtGui.QDialog):
    def __init__ (self, parent=None):
        super(kayitolustur, self).__init__(parent)
        firmaadi_label=QtGui.QLabel("Firma Adı:")
        firmayetkili_label=QtGui.QLabel("Firma Yetkilisi:")
        firmatelefon_label=QtGui.QLabel("Firma Telefonu:")
        firmatelefon2_label=QtGui.QLabel("Firma Telefonu 2:")

        kayditamamla_dugme=QtGui.QPushButton("Kaydı Tamamla")
        kayittanvazgec_dugme=QtGui.QPushButton("Vazgeç")

        firmaadi_txtbox=QtGui.QLineEdit()
        firmayetkili_txtbox=QtGui.QLineEdit()
        firmatelefon_txtbox=QtGui.QLineEdit()
        firmatelefon2_txtbox=QtGui.QLineEdit()

        self.connect(kayditamamla_dugme, QtCore.SIGNAL("pressed()"), self.kayditamamla)
        self.connect(kayittanvazgec_dugme, QtCore.SIGNAL("pressed()"), self.reject)

        duzen=QtGui.QGridLayout()
        duzen.addWidget(firmaadi_label,0,0)
        duzen.addWidget(firmayetkili_label,1,0)
        duzen.addWidget(firmatelefon_label,2,0)
        duzen.addWidget(firmatelefon2_label,3,0)
        duzen.addWidget(kayittanvazgec_dugme,4,0)

        a=firmaadi_txtbox.text
        b=firmayetkili_txtbox.text
        c=firmatelefon_txtbox.text
        d=firmatelefon2_txtbox.text
       
        duzen.addWidget(firmaadi_txtbox,0,1)
        duzen.addWidget(firmayetkili_txtbox,1,1)
        duzen.addWidget(firmatelefon_txtbox,2,1)
        duzen.addWidget(firmatelefon2_txtbox,3,1)
        duzen.addWidget(kayditamamla_dugme,4,1)
        self.setLayout(duzen)

        self.setWindowTitle("Yeni Kayıt Oluştur")



    def kayditamamla(self):
        baglanti=mysql.connector.connect(host='adsdada',database='adsadasda',user='adsadda',password='adsada') #Bu satırdakiler hayalidir. :)
        isaretci=baglanti.cursor()
        yeni_kayit=isaretci.execute('''INSERT INTO firmalar (firma_adi, firma_yetkili, firma_telefon1, firma_telefon2) VALUES ("{}", "{}", "{}", "{}")'''
                                    .format(self.a, self.b, self.c, self.d))
        baglanti.commit()
        baglanti.close()


Arkadaşlar kodlarımı doğru yazdığımı düşünüyorum. Veritabanına göndereceğim verileri. Kaydı Tamamla butonuna bastığımda şu hatayı alıyorum:

Traceback (most recent call last):
  File "C:\Users\User\Desktop\Firmalar\firmalar-deneme.pyw", line 106, in kayditamamla
    .format(self.a, self.b, self.c, self.d))
AttributeError: 'kayitolustur' object has no attribute 'a'


Ne yapmalıyım arkadaşlar?
----------------

Sorunumu buldum. :)

Yukarıdaki a=firmaadi_txtbox.text satırlarının başına self. koymayı unutmuşum. Onu hallettim. Fakat bu seferde başka bir sorun çıktı. Veritabanına veri gönderilmiş fakat gönderilen veriler birer nesne:

<built-in method text of QLineEdit object at 0x04598EE0>

Bunu nasıl çözebilirim arkadaşlar?

Gördüğüm kadarıyla

firmaadi_txtbox=QtGui.QLineEdit()
print(firmaadi_txtbox.text)

Sonucunda çıkan şey metin kutusu içerisine girilen metin olmuyor. Bize bir nesne veriyor. İçerisindeki metni alamıyoruz. Bu yöntemle.

iskenderoguz

Alıntı Yapprint(firmaadi_txtbox.text)

bu kısmı şöyle denermisin:

print(firmaadi_txtbox.text())

ankyra

#2
Aaaa teşekkür ederim. Çok sağolun. Evet halloldu. Çok teşekkür ederim. :)