如何让CustomTkinter的CTkComboBox仅显示5个选项并带滚动条?
解决CTkComboBox下拉框限制显示选项数量并添加滚动条的问题
要实现CTkComboBox下拉展开时仅显示5个选项并支持滚动浏览,只需利用控件自带的dropdown_max_height参数设置下拉框的最大高度即可。默认每个选项的高度约为22px,设置为110px刚好能容纳5个选项,超出部分会自动生成滚动条。
修改后的完整代码
import customtkinter as ctk import tkinter as tk window = ctk.CTk() window.geometry("800x600") # 修正原代码的几何参数错误,将*改为x ctk.set_appearance_mode("dark") price_values = [ "£50,000", "£60,000", "£70,000", "£80,000", "£90,000", "£100,000", "£110,000", "£120,000", "£125,000", "£150,000", "£175,000", "£200,000", "£210,000", "£220,000", "£225,000", "£250,000", "£275,000", "£300,000", "£325,000", "£350,000", "£375,000", "£400,000", "£425,000", "£450,000", "£475,000", "£500,000", "£525,000", "£550,000", "£575,000", "£600,000", "£625,000", "£650,000", "£675,000", "£700,000", "£725,000", "£750,000", "£775,000", "£800,000", "£825,000", "£850,000", "£875,000", "£900,000", "£925,000", "£950,000", "£975,000", "£1,000,000", "£2,000,000", "£3,000,000", "£4,000,000", "£5,000,000", "£6,000,000", "£7,000,000", "£8,000,000", "£9,000,000", "£10,000,000", "£11,000,000", "£12,000,000", "£13,000,000", "£14,000,000", "£15,000,000" ] min_price_dropdown = ctk.CTkComboBox( window, values=price_values, dropdown_hover_color="blue", width=200, border_color="blue", dropdown_max_height=110 # 设置下拉框最大高度,刚好显示5个选项 ) min_price_dropdown.pack() min_price_dropdown.set("Minimum Price") window.mainloop()
关键说明
dropdown_max_height=110:通过设置该参数限制下拉框的高度,当选项数量超过5个时,自动启用垂直滚动条。- 修正了原代码中
geometry("800*600")的错误,tkinter窗口尺寸参数需使用x而非*。
内容的提问来源于stack exchange,提问作者Zatando1
相关产品推荐
相关产品推荐

