Tkinterde Kendi Tanimladıgımız Butonu Nasil Kaldırabiliriz?

Selamun aleykum,

Soracagım soruyu asagıdaki ornek uzerinden anlatayım.

import Tkinter

def yeni_buton_fonksiyonu():
    Etiket["text"] = " yeni_butonumuza_tiklandı."

def deneme():
    Etiket["text"] = "Yeni Butonlarimizi Olusturduk"
    for i in range(5):
        yeni_butonlar = Tkinter.Button(text="yeni_buton" + str(i),command = yeni_buton_fonksiyonu)
        yeni_butonlar.pack()

pencere = Tkinter.Tk()

Etiket = Tkinter.Label(text = "Deneme Yapiyoruz.")
Etiket.pack()
Buton = Tkinter.Button(text = "ornek_dugme",command = deneme)
Buton.pack()
pencere.mainloop()

Sorum su,
biz bu kodda “deneme” adli butona tikladigimizda bu “deneme” adli butonu nasil kaldırabiliriz?

Buldum tesekkurler soyle ki:

import Tkinter

def yeni_buton_fonksiyonu():
    Etiket["text"] = " yeni_butonumuza_tiklandı."

def deneme():
    Etiket["text"] = "Yeni Butonlarimizi Olusturduk"
    Buton.pack_forget() #sorumun cevabi pack_forget galiba.pack_forget metodunu kullanarak "Buton" adli butonu kaldırıyorum.
    for i in range(5):
        yeni_butonlar = Tkinter.Button(text="yeni_buton" + str(i),command = yeni_buton_fonksiyonu)
        yeni_butonlar.pack()

pencere = Tkinter.Tk()

Etiket = Tkinter.Label(text = "Deneme Yapiyoruz.")
Etiket.pack()
Buton = Tkinter.Button(text = "ornek_dugme",command = deneme)
Buton.pack()
pencere.mainloop()

Bir yanlisim varsa duzeltebilirseniz cok sevinirim.Ayrıca bu sorunun baska cevapları varsa onlari da bana burada anlatırsaniz inanin cok memnun olurum.Ben cozum olarak bunu buldum galiba.

Bir nesneyi kaldırmak için,(mesela Buton) destroy() metodunu kullanabilirsiniz.

Buton.destroy()
1 Beğeni

Tesekkur ederim ilgilendiginiz icin.

1 Beğeni

del Buton
İfadesi aynı işi görür mü?

1 Beğeni

Denedim, çalışmıyor.

2 Beğeni
import tkinter

olmalı.

1 Beğeni

Kusura bakmayin.İlgilenemedim bu soruyla.Ama @ismailarilik bey gereken cevabi vermis sanirim. Ama ilgilendiginiz icin mutlu oldum ayni zamanda .İlginiz icin tesekkurler.

Haklisiniz.Ancak evdeki bilgisayarda windows xp kurulu oldugu icin anca python2.7 yi kurabildim.python3 u kurmayi ne kadar denediysem de olmadi.

1 Beğeni

Python 3’ü kurarken nasıl bir sorunla karşılaştınız? Python 3 Windows XP’yi desteklemiyor mu acaba? Öyle bir şeyle karşılaşmadım ama belki olabilir.

Bu linke göre python windows xp ye destegi kesmis durumda.Ama yanlis anlamadiydam python3.4 u oneriyor.
Onceki isletim sistemim de windows vistaydi.Ona da destek yok.Ne Googleda,ne de pythonda.Ama sartlar elverirse bilgisayara yaz tatilinde linux kuracagim.Windowsda calismak biraz zorluyor ne yazik ki.

Dalginligima gelmis,kusura bakmayin.Daha dogrusu ne kadar arastirdiysam da windows xp icin python3 ü bulamadigimi soylemek istemistim.O zamanlar pythona yeni basliyordum.Mazur görün.

Eski bir konu, fakat aradığım bu olabilir diye bakmıştım. Bir pencere oluşturdum pencerede 4 adet butonum var. 4. Buton çıkış

  1. Butona bastığımda yeni bir pencere oluşturmak yada programı kapatıp başka bir programı çalıştırmak nasıl olabilir.
    win = Tk()
    win.destroy() yaptığımda herşey kapanıyor.

Alttaki gibi bi şey mi istiyosunuz?

import tkinter as tk

root = tk.Tk()

def Yeni_Pencere():
    root2=tk.Tk()
    root2.geometry("600x600")

    yazı = tk.Label(root2,text="Yeni Pencereye")
    yazı.pack()

    yazı2 = tk.Label(root2,text="Hoşgeldiniz")
    yazı2.pack()

    root2.mainloop()


b1 = tk.Button(text="   1   ",command = Yeni_Pencere)
b1.pack()

b2 = tk.Button(text="   2   ")
b2.pack()

b3 = tk.Button(text="   3   ")
b3.pack()

b4 = tk.Button(text="   4   ",command=quit)
b4.pack()

root.mainloop()

Bunu deneyeceğim teşekkürler.

Bir sorum daha var. yeniKayıt.py arama.py kayitSil.py gibi 3 farklı program oluşturdum. Rehber.py isimli ana programdan bunları nasıl çağırabilirim veya çalıştırabilirim?

Ana Dosya

import tkinter as tk

from Denemeler2 import yeniKayıt #Burada Sizin Öbür Dosyanızdan Fonksiyonu Çekiyoruz

root = tk.Tk()


b1 = tk.Button(text="   1   ",command = yeniKayıt)
b1.pack()

b2 = tk.Button(text="   2   ")
b2.pack()

b3 = tk.Button(text="   3   ")
b3.pack()

b4 = tk.Button(text="   4   ",command=quit)
b4.pack()

root.mainloop()

Fonksiyon Çekilen Dosya

import tkinter as tk


def yeniKayıt():
    root = tk.Tk()

    root.geometry("600x600")

    yazı = tk.Label(root,text="--yeniKayıt.py--")
    yazı.pack()

    yazı2 = tk.Label(root,text="Hoşgeldiniz")
    yazı2.pack()

    root.mainloop()
1 Beğeni