Почему не отображаются CTkFrame на CtkScrollableFrame?
У меня проблема, не отображаются виджеты на CtkScrollableFrame / Customtkinter. Помогите пожалуйста решить, вот часть кода: import ctypes import json
import cpuinfo
import customtkinter as ctk
import keyboard
import psutil
import pywinstyles
from PIL import Image
from open_json import *
# Open settings.json
settings = open_on_read('settings.json')
colors = settings['Colors'][settings['Theme']]
# Color depending
text_color = colors['text']
hover_color = colors['hover']
active_color = colors['active']
frame_color = colors['main_frame']
menu_frame_color = colors['menu_frame']
transparent_color = 'transparent'
class AppsLogFrame(ctk.CTkScrollableFrame):
def __init__(self, master, **kwargs):
super().__init__(master, **kwargs)
# добавление виджетов на фрейм
for i, proc in enumerate(psutil.process_iter()):
process_name = proc.name()
self.app_frame = ctk.CTkFrame(
master=self, # Измените master на self.interior
width=400,
height=50,
corner_radius=7,
border_width=0,
fg_color='#212121',
bg_color='transparent'
)
self.app_name_label = ctk.CTkLabel(
self.app_frame,
text=process_name,
text_color=text_color
)
self.app_frame.place(y=i*50, x=20)
self.app_name_label.place(y=25, x=20)
Ответы (1 шт):
Автор решения: KiryxaKart
→ Ссылка
В общем сам нашёл решение, оказывается этот виджет не поддерживает метод размещения place и я использовал grid:
class AppsLogFrame(ctk.CTkScrollableFrame):
def __init__(self, master, **kwargs):
super().__init__(master, **kwargs)
# добавление виджетов на фрейм
for i, proc in enumerate(psutil.process_iter()):
process_name = proc.name()
if process_name != '':
self.app_frame = ctk.CTkFrame(
master=self,
width=595,
height=50,
corner_radius=7,
border_width=0,
fg_color='#212121',
bg_color='transparent'
)
self.app_name_label = ctk.CTkLabel(
self.app_frame,
text=process_name,
text_color=text_color
)
self.app_frame.grid(row=i, column=0, pady=2) # Изменить на grid
self.app_name_label.place(y=25, x=20)