import tkinter as tk
from tkinter import *
import random as rd
root = Tk()
root.title('Buttons')
root.geometry('800x600')
root['bg'] = 'salmon'
count = 0
def clicked():
global count
count += 1
print(count)
set_config()
lbl.configure(text = count)
def destroy():
btn.destroy()
def destroy2():
btn1.destroy()
def newbtn():
global btn1
btn1 = Button(root, text = 'najmi', font = 'Roboto 35', bg = 'cyan', padx = '40', pady = '20', command = lambda: [destroy2(), newbtn(), clicked()])
btn1.place(x = rd.randint(0,572), y = rd.randint(0,470))
lbl = Label(root, text = '0', font = 'Arial 35', bg = 'salmon', fg = 'maroon')
lbl.place(x = 0, y = 0)
btn = Button(root, text = 'najmi', font = 'Roboto 35', bg = 'cyan', padx = '40', pady = '20', command = lambda: [destroy(), newbtn(), clicked()])
btn.pack()
def set_config():
if count >= 10:
# btn.configure(bg = 'coral1')
root.configure(bg = 'purple')
btn1.configure(bg = 'coral1')
root.mainloop()
def fill_table_subcategory(self):
self.subcategory.setRowCount(0)
data_for_subcategory = self.get_selected_category()
self.subcategory.setSortingEnabled(False) # <- вот этой строкой
for row in enumerate(subcategory_data[data_for_subcategory]):
self.subcategory.insertRow(row[0])
for column in range(self.subcategory.columnCount()):
self.subcategory.setItem(row[0], column, QTableWidgetItem(str(row[1][column])))
self.subcategory.setSortingEnabled(True)
def open_window(self):
""" Открыть 2 окно """
new_window = add_product_to_catalogue()
new_window.show()
def open_window(self):
""" Открыть 2 окно """
self.new_window = add_product_to_catalogue.Widget()
self.new_window.show()
f1 = Frame(root, width=400, height=100, bg="red").pack()
f1 = Frame(root, width=400, height=100, bg="red")
f1..pack()
f1.propagate(False)
from tkinter import *
root = Tk()
root.geometry('500x600')
f1 = Frame(root, width=400, height=100, bg="red")
f1.pack()
f1.propagate(False)
f2 = Frame(root, width=400, height=100, bg="black")
f2.pack()
f2.propagate(False)
f3 = Frame(root, width=400, height=100, bg="yellow")
f3.pack()
f3.propagate(False)
b1 = Button(f1, text ='кнопка для фрейма №1', bg ='pink').pack()
b2 = Button(f2, text ='кнопка для фрейма №2', bg ='blue').pack()
b3 = Button(f3, text ='кнопка для фрейма №3', bg ='silver').pack()
root.mainloop()
В приведенном коде f1 - это результат вызова метода pack(), который НЕ возвращает ссылку на фрэйм, а возвращает None. Это базовый синтаксис питона, переменной присваивается результат вызова функции.