Tkinter Buton rengi

Aşağıdaki kodda Azalt ve Arttır butonlarının rengini gri(bg) ve aqua(fg) yapmak istiyorum ama kodu çalıştırınca ilk aqua(bg) gri(fg) geliyor mouse ile üstüne gelince düzeliyor ama bunu nasıl düzeltebilirim

from tkinter import *
import time
import urllib.request

Yazı="Yazbel-Forum"
# html=urllib.request.urlopen(site)
# print(html.read())



sayac=0

def g1():
    global sayac
    sayac+=1
    l["text"]=Yazı[sayac-1]
    print(sayac)
    if sayac >= Yazı.__len__():
        b["state"]="disabled"
        l["text"]="Bitti"

def g2():
    global sayac
    sayac-=1
    l["text"]=Yazı[sayac-1]
    print(sayac)
    if sayac >= 0:
        b1["state"]="active"
    else:
        b1["state"]="disabled"



tk=Tk()

tk.geometry("500x450")
tk.minsize(width=500,height=450)
tk.title("Ana Sayfa")

l=Label(text="html",
        width=60,
        height=10,
        bg="gray",
        fg="black"
        )
l.pack()

b=Button(text="Arttır",
         command=g1,
         state="active",
         fg="aqua",
         bg="gray",
         disabledforeground="red",
         activeforeground="black",
         activebackground="aqua",
         width=30,
         height=5,
         )
b.pack(side=RIGHT)



b1=Button(text="Azalt",
         command=g2,
         state="active",
         fg="aqua",
         bg="gray",
         disabledforeground="red",
         activeforeground="black",
         activebackground="aqua",
         width=30,
         height=5
         )
b1.pack(side=LEFT)


mainloop()

Hem fg değerini “aqua” yapıp, hem de activebackground değerini “aqua” yapmanız sanki biraz ters olmuş…

Active background mouse butonun üstüne gelince olan renk isterseniz kodları deneyin
eğer active background yazmassam mouse
oraya gelince beyaz background oluyor.

1 Beğeni

Evet şimdi baktım kusura bakmayın. Butonlardaki state niteliği kaldırmanız yeterli. Siz state = “active” yazınca, program başlar başlamaz sanki üzerine mouse ile gelinmiş gibi tepki veriyordu ve tekrar mouse ayrılınca normal haline dönüyordu.

b=Button(text="Arttır",
         command=g1,
         fg="aqua",
         bg="gray",
         disabledforeground="red",
         activeforeground="black",
         activebackground="aqua",
         width=30,
         height=5,
         )
b.pack(side=RIGHT)
1 Beğeni

Çalıştı kod ben de siz açıklayınca anladım.

1 Beğeni