I have the following options GUI which I’m trying to build:
<code>import customtkinter as ctk
# Create a tkinter window
window = ctk.CTk()
# Create a frame for options
opts_frame = ctk.CTkFrame(window)
opts_frame.pack()
# Define variables
blank_window = ctk.IntVar()
smoothing = ctk.DoubleVar()
iterations = ctk.IntVar()
bootstraps = ctk.IntVar()
blank_window.set(0)
smoothing.set(0.1)
iterations.set(3)
bootstraps.set(100)
# Create labels
ctk.CTkLabel(opts_frame, text='Window Size:').grid(row=0, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Smoothing:').grid(row=1, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Iterations:').grid(row=2, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Bootstraps:').grid(row=3, column=0, sticky='w')
# Create entry fields
window_entry = ctk.CTkEntry(opts_frame, textvariable=blank_window)
smooth_entry = ctk.CTkEntry(opts_frame, textvariable=smoothing)
iter_entry = ctk.CTkEntry(opts_frame, textvariable=iterations)
boot_entry = ctk.CTkEntry(opts_frame, textvariable=bootstraps)
window_entry.grid(row=0, column=1)
smooth_entry.grid(row=1, column=1)
iter_entry.grid(row=2, column=1)
boot_entry.grid(row=3, column=1)
# Create increase and decrease functions
def increase_window():
blank_window.set(blank_window.get() + 1)
def decrease_window():
blank_window.set(blank_window.get() - 1)
# Create buttons
inc_button = ctk.CTkButton(opts_frame, text="+", command=increase_window)
dec_button = ctk.CTkButton(opts_frame, text="-", command=decrease_window)
inc_button.grid(row=0, column=2)
dec_button.grid(row=0, column=3)
# Start the ctkinter event loop
window.mainloop()
</code>
<code>import customtkinter as ctk
# Create a tkinter window
window = ctk.CTk()
# Create a frame for options
opts_frame = ctk.CTkFrame(window)
opts_frame.pack()
# Define variables
blank_window = ctk.IntVar()
smoothing = ctk.DoubleVar()
iterations = ctk.IntVar()
bootstraps = ctk.IntVar()
blank_window.set(0)
smoothing.set(0.1)
iterations.set(3)
bootstraps.set(100)
# Create labels
ctk.CTkLabel(opts_frame, text='Window Size:').grid(row=0, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Smoothing:').grid(row=1, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Iterations:').grid(row=2, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Bootstraps:').grid(row=3, column=0, sticky='w')
# Create entry fields
window_entry = ctk.CTkEntry(opts_frame, textvariable=blank_window)
smooth_entry = ctk.CTkEntry(opts_frame, textvariable=smoothing)
iter_entry = ctk.CTkEntry(opts_frame, textvariable=iterations)
boot_entry = ctk.CTkEntry(opts_frame, textvariable=bootstraps)
window_entry.grid(row=0, column=1)
smooth_entry.grid(row=1, column=1)
iter_entry.grid(row=2, column=1)
boot_entry.grid(row=3, column=1)
# Create increase and decrease functions
def increase_window():
blank_window.set(blank_window.get() + 1)
def decrease_window():
blank_window.set(blank_window.get() - 1)
# Create buttons
inc_button = ctk.CTkButton(opts_frame, text="+", command=increase_window)
dec_button = ctk.CTkButton(opts_frame, text="-", command=decrease_window)
inc_button.grid(row=0, column=2)
dec_button.grid(row=0, column=3)
# Start the ctkinter event loop
window.mainloop()
</code>
import customtkinter as ctk
# Create a tkinter window
window = ctk.CTk()
# Create a frame for options
opts_frame = ctk.CTkFrame(window)
opts_frame.pack()
# Define variables
blank_window = ctk.IntVar()
smoothing = ctk.DoubleVar()
iterations = ctk.IntVar()
bootstraps = ctk.IntVar()
blank_window.set(0)
smoothing.set(0.1)
iterations.set(3)
bootstraps.set(100)
# Create labels
ctk.CTkLabel(opts_frame, text='Window Size:').grid(row=0, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Smoothing:').grid(row=1, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Iterations:').grid(row=2, column=0, sticky='w')
ctk.CTkLabel(opts_frame, text='Bootstraps:').grid(row=3, column=0, sticky='w')
# Create entry fields
window_entry = ctk.CTkEntry(opts_frame, textvariable=blank_window)
smooth_entry = ctk.CTkEntry(opts_frame, textvariable=smoothing)
iter_entry = ctk.CTkEntry(opts_frame, textvariable=iterations)
boot_entry = ctk.CTkEntry(opts_frame, textvariable=bootstraps)
window_entry.grid(row=0, column=1)
smooth_entry.grid(row=1, column=1)
iter_entry.grid(row=2, column=1)
boot_entry.grid(row=3, column=1)
# Create increase and decrease functions
def increase_window():
blank_window.set(blank_window.get() + 1)
def decrease_window():
blank_window.set(blank_window.get() - 1)
# Create buttons
inc_button = ctk.CTkButton(opts_frame, text="+", command=increase_window)
dec_button = ctk.CTkButton(opts_frame, text="-", command=decrease_window)
inc_button.grid(row=0, column=2)
dec_button.grid(row=0, column=3)
# Start the ctkinter event loop
window.mainloop()
I want to shrink the column widths for the entry fields and the buttons down to a smaller size so they don’t take up so much room.
I have tried using weights and minsize in columnconfigure
but have had no luck.
Surely, I’m overlooking something very simple here. How can I shrink column sizes in customtkinter?