Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapakah `entryBox.get()` Menyebabkan `AttributeError: NoneType objek tidak mempunyai atribut` dalam Tkinter?

Mengapakah `entryBox.get()` Menyebabkan `AttributeError: NoneType objek tidak mempunyai atribut` dalam Tkinter?

DDD
Lepaskan: 2024-12-29 06:33:10
asal
832 orang telah melayarinya

Why Does `entryBox.get()` Cause an `AttributeError: NoneType object has no attribute` in Tkinter?

Mengapa "AttributeError: NoneType object has no attribute" Pengecualian Menggunakan Tkinter

Apabila bekerja dengan antara muka pengguna grafik (GUI) menggunakan Tkinter, adalah mungkin untuk menghadapi perkara berikut ralat: "AttributeError: NoneType object tidak mempunyai atribut." Ralat ini timbul apabila atribut widget, seperti get(), dipanggil pada objek yang ditetapkan kepada None.

Origin of None Value

Dalam kod yang disediakan, ralat berpunca daripada fungsi grabText() cuba memanggil entryBox.get() pada objek yang telah diberikan nilai Tiada. Ini berlaku kerana fungsi grid() yang digunakan untuk meletakkan widget Kemasukan dalam GUI mengembalikan Tiada.

Akibatnya, kotak masuk ditetapkan kepada Tiada dan bukannya objek Kemasukan sebenar, yang membawa kepada ralat apabila get () atribut dipanggil.

Membetulkan Isu

Untuk menyelesaikan isu ini, adalah penting untuk membahagikan kod kepada berasingan baris:

entryBox = Entry(root, width=60)
entryBox.grid(row=2, column=1, sticky=W)
Salin selepas log masuk

Dengan melakukan ini, widget Kemasukan mula-mula dibuat dan kemudian diletakkan dalam GUI menggunakan fungsi grid(). Akibatnya, pembolehubah entryBox akan memegang objek Entry dengan betul, membenarkan atribut get() dipanggil dengan jayanya.

Ini memastikan bahawa entryBox diberikan kepada widget Entry, sekali gus menyelesaikan objek "AttributeError: NoneType tidak mempunyai atribut".

Atas ialah kandungan terperinci Mengapakah `entryBox.get()` Menyebabkan `AttributeError: NoneType objek tidak mempunyai atribut` dalam Tkinter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan