mirror of
https://github.com/TomSchimansky/CustomTkinter.git
synced 2023-08-10 21:13:13 +03:00
finished CTkSegmentedButton, created test_segmented_button.py
This commit is contained in:
@ -98,17 +98,22 @@ class App(customtkinter.CTk):
|
||||
self.slider_progressbar_frame = customtkinter.CTkFrame(self, fg_color=None)
|
||||
self.slider_progressbar_frame.grid(row=1, column=1, columnspan=2, padx=(20, 10), pady=(10, 10), sticky="nsew")
|
||||
self.slider_progressbar_frame.grid_columnconfigure(0, weight=1)
|
||||
self.slider_progressbar_frame.grid_rowconfigure(3, weight=1)
|
||||
self.slider_progressbar_frame.grid_rowconfigure(4, weight=1)
|
||||
|
||||
self.seg_button = customtkinter._CTkSegmentedButton(self.slider_progressbar_frame, corner_radius=1000,
|
||||
values=["CTkSegmentedButton", "Value 2", "Value 3"])
|
||||
self.seg_button.grid(row=0, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
|
||||
self.progressbar_1 = customtkinter.CTkProgressBar(self.slider_progressbar_frame)
|
||||
self.progressbar_1.grid(row=0, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.progressbar_1.grid(row=1, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.progressbar_2 = customtkinter.CTkProgressBar(self.slider_progressbar_frame)
|
||||
self.progressbar_2.grid(row=1, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.progressbar_2.grid(row=2, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.slider_1 = customtkinter.CTkSlider(self.slider_progressbar_frame, from_=0, to=1, number_of_steps=4)
|
||||
self.slider_1.grid(row=2, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.slider_1.grid(row=3, column=0, padx=(20, 10), pady=(10, 10), sticky="ew")
|
||||
self.slider_2 = customtkinter.CTkSlider(self.slider_progressbar_frame, orientation="vertical")
|
||||
self.slider_2.grid(row=0, column=1, rowspan=4, padx=(10, 10), pady=(10, 10), sticky="ns")
|
||||
self.slider_2.grid(row=0, column=1, rowspan=5, padx=(10, 10), pady=(10, 10), sticky="ns")
|
||||
self.progressbar_3 = customtkinter.CTkProgressBar(self.slider_progressbar_frame, orientation="vertical")
|
||||
self.progressbar_3.grid(row=0, column=2, rowspan=4, padx=(10, 20), pady=(10, 10), sticky="ns")
|
||||
self.progressbar_3.grid(row=0, column=2, rowspan=5, padx=(10, 20), pady=(10, 10), sticky="ns")
|
||||
|
||||
# set default values
|
||||
self.sidebar_button_3.configure(state="disabled", text="Disabled CTkButton")
|
||||
|
72
test/manual_integration_tests/test_segmented_button.py
Normal file
72
test/manual_integration_tests/test_segmented_button.py
Normal file
@ -0,0 +1,72 @@
|
||||
import customtkinter
|
||||
|
||||
|
||||
app = customtkinter.CTk()
|
||||
app.geometry("600x950")
|
||||
|
||||
switch_1 = customtkinter.CTkSwitch(app, text="darkmode", command=lambda: customtkinter.set_appearance_mode("dark" if switch_1.get() == 1 else "light"))
|
||||
switch_1.pack(padx=20, pady=20)
|
||||
|
||||
seg_1 = customtkinter._CTkSegmentedButton(app, values=["value 1", "Value 2", "Value 42", "Value 123", "longlonglong"])
|
||||
seg_1.pack(padx=20, pady=20)
|
||||
|
||||
frame_1 = customtkinter.CTkFrame(app, height=100)
|
||||
frame_1.pack(padx=20, pady=20, fill="x")
|
||||
|
||||
seg_2_var = customtkinter.StringVar(value="value 1")
|
||||
|
||||
seg_2 = customtkinter._CTkSegmentedButton(frame_1, values=["value 1", "Value 2", "Value 42"], variable=seg_2_var)
|
||||
seg_2.pack(padx=20, pady=20)
|
||||
|
||||
seg_2.insert_value(0, "insert at 0")
|
||||
seg_2.insert_value(1, "insert at 1")
|
||||
|
||||
label_seg_2 = customtkinter.CTkLabel(frame_1, textvariable=seg_2_var)
|
||||
label_seg_2.pack(padx=20, pady=20)
|
||||
|
||||
frame_1_1 = customtkinter.CTkFrame(frame_1, height=100)
|
||||
frame_1_1.pack(padx=20, pady=20, fill="x")
|
||||
|
||||
switch_2 = customtkinter.CTkSwitch(frame_1_1, text="change fg", command=lambda: frame_1_1.configure(fg_color="red" if switch_2.get() == 1 else "green"))
|
||||
switch_2.pack(padx=20, pady=20)
|
||||
|
||||
seg_3 = customtkinter._CTkSegmentedButton(frame_1_1, values=["value 1", "Value 2", "Value 42"])
|
||||
seg_3.pack(padx=20, pady=20)
|
||||
|
||||
seg_4 = customtkinter._CTkSegmentedButton(app)
|
||||
seg_4.pack(padx=20, pady=20)
|
||||
|
||||
seg_5_var = customtkinter.StringVar(value="kfasjkfdklaj")
|
||||
seg_5 = customtkinter._CTkSegmentedButton(app, corner_radius=1000, border_width=0, unselected_color="green",
|
||||
variable=seg_5_var)
|
||||
seg_5.pack(padx=20, pady=20)
|
||||
seg_5.configure(values=["1", "2", "3", "4"])
|
||||
seg_5.insert_value(0, "insert begin")
|
||||
seg_5.insert_value(len(seg_5.cget("values")), "insert 1")
|
||||
seg_5.insert_value(len(seg_5.cget("values")), "insert 2")
|
||||
seg_5.insert_value(len(seg_5.cget("values")), "insert 3")
|
||||
seg_5.configure(fg_color="green")
|
||||
|
||||
seg_5.set("insert 2")
|
||||
seg_5.remove_value("insert 2")
|
||||
|
||||
label_seg_5 = customtkinter.CTkLabel(app, textvariable=seg_5_var)
|
||||
label_seg_5.pack(padx=20, pady=20)
|
||||
|
||||
seg_6_var = customtkinter.StringVar(value="kfasjkfdklaj")
|
||||
seg_6 = customtkinter._CTkSegmentedButton(app, width=300)
|
||||
seg_6.pack(padx=20, pady=20)
|
||||
entry_6 = customtkinter.CTkEntry(app)
|
||||
entry_6.pack(padx=20, pady=(0, 20))
|
||||
button_6 = customtkinter.CTkButton(app, text="set", command=lambda: seg_6.set(entry_6.get()))
|
||||
button_6.pack(padx=20, pady=(0, 20))
|
||||
button_6 = customtkinter.CTkButton(app, text="insert value", command=lambda: seg_6.insert_value(0, entry_6.get()))
|
||||
button_6.pack(padx=20, pady=(0, 20))
|
||||
label_6 = customtkinter.CTkLabel(app, textvariable=seg_6_var)
|
||||
label_6.pack(padx=20, pady=(0, 20))
|
||||
|
||||
seg_6.configure(height=50, variable=seg_6_var)
|
||||
seg_6.remove_value("CTkSegmentedButton")
|
||||
seg_6.configure(values=[])
|
||||
|
||||
app.mainloop()
|
Reference in New Issue
Block a user