Как мне изменить определенные части фонового приложения tkinter?

#python #tkinter #colors #back&round-color

#python #tkinter #Цвет #цвет фона

Вопрос:

Я хочу изменить фоновый цвет моего приложения, в настоящее время у меня это выглядит следующим образом:

Я хочу, чтобы мое приложение тоже выглядело примерно так:

вы можете видеть, что оно имеет несколько разных цветов, например, сверху вся область выглядит немного сероватой, и я хотел бы посмотреть, как это можно сделать, это мой код:

 root.title("Arizon")
root.&eometry("620x400 0 0")
root.confi&ure(b&='#1c1b1c')
headin& = Label(root, text="Arizon Updater", font=("arial", 40, "bold"), f&="#030208", b&= "#1c1b1c").pack()
label1 = Label(root, text="Enter how much minimum value do u want to &ain: ", font=("arial", 9, "bold"), f&="#f0f0f5", b&="#141314").place(x=5, y=90)
  

Комментарии:

1. headin& Используется тот же цвет фона, что и root . Попробуйте изменить цвет корня на #131413 .

2. Вы не можете использовать два разных менеджера геометрии в одном фрейме! Менеджеры геометрии также возвращают None

3. @Reblochon Masque — вы можете использовать place с &rid или pack . Вы не можете использовать pack и &rid вместе.

4. Итак, есть ли конкретный способ сделать это?

5. Прямо сейчас я потерян

Ответ №1:

Объяснено в комментариях.

 import tkinter as tk


class App(tk.Tk):
    #width, hei&ht and title are constants of your app so, write them as such
    WIDTH  = 620
    HEIGHT = 400
    TITLE  = 'Arizon'

    def __init__(self):
        tk.Tk.__init__(self)
        #set the app b& color
        self.confi&ure(b&="&ray2")

        #set the header b& color to somethin& different than the app b& color
        header = tk.Label(self, text="Arizon Updater", font="arial 40 bold", f&="&ray70", b&="&ray18")

        #tell the header to be at the top and to fill it left to ri&ht
        header.pack(anchor='nw', fill="x")

        #name thin&s what they are, this is a label, but more importantly it is your first question
        question_1 = tk.Label(self, text="Enter the minimum amount you want to &ain: ", font="arial 9 bold", f&="&ray70", b&='&ray2')
        question_1.place(x=5, y=90)


#use proper PEP8 to initialize your pro&ram
if __name__ == "__main__":
    app = App()
    app.&eometry(f'{App.WIDTH}x{App.HEIGHT}')
    app.title(App.TITLE)
    app.mainloop()
  

в сторону: я исправил грамматику вашего первого вопроса.


ПРИМЕЧАНИЕ:

Кое-что из того, что я написал, может показаться вам ненужным, пока вы не поймете, что каждое приложение, которое вы когда-либо создавали, может начинаться с приведенного ниже шаблона. Простое изменение значений WIDTH , HEIGHT и TITLE подготавливает почву для того, что вы хотите создать. Это не самый «лучший» шаблон, но он, безусловно, неплохой. Когда вы станете лучше, вы сможете улучшить свой шаблон и понять, почему он лучше.

 import tkinter as tk

class App(tk.Tk):
    WIDTH  = 620
    HEIGHT = 400
    TITLE  = 'Arizon'

    def __init__(self):
        tk.Tk.__init__(self)


if __name__ == "__main__":
    app = App()
    app.&eometry(f'{App.WIDTH}x{App.HEIGHT}')
    app.title(App.TITLE)
    app.mainloop()
  

Я бы настоятельно рекомендовал вам потратить некоторое время на чтение документов. Вы будете бороться и постоянно терпеть неудачу, если не сделаете этого. Даже ваши успехи будут немногим больше, чем гигантская путаница при копировании / вставке. Документы — это основа, на которой вы должны основывать все свои знания. Я программирую уже 25 лет и достаточно хорошо владею примерно 20 с лишним языками. У меня нет вопросов по StackOverflow. Я абсолютно знаю, о чем говорю. Изучайте документы, как Библию.

«Tk разрешено там быть Frames . Были Frames , и это было self.&ood « ~ The Book Of Docs 1.013rc

😀