Skip to content

A simple listbox for customtkinter (extenstion/add-on)

License

Notifications You must be signed in to change notification settings

Akascape/CTkListbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CTkListbox

This is a listbox widget for customtkinter, works just like the tkinter listbox.

Screenshot

Installation

pip install CTkListbox

GitHub repo size

Usage

import customtkinter
from CTkListbox import *

def show_value(selected_option):
    print(selected_option)
    
root = customtkinter.CTk()

listbox = CTkListbox(root, command=show_value)
listbox.pack(fill="both", expand=True, padx=10, pady=10)

listbox.insert(0, "Option 0")
listbox.insert(1, "Option 1")
listbox.insert(2, "Option 2")
listbox.insert(3, "Option 3")
listbox.insert(4, "Option 4")
listbox.insert(5, "Option 5")
listbox.insert(6, "Option 6")
listbox.insert(7, "Option 7")
listbox.insert("END", "Option 8")

root.mainloop()

Arguments

Parameter Description
master parent widget
width optional, set width of the listbox
height optional, set height of the listbox
fg_color foreground color of the listbox
border_color border color of the listbox frame
border_width width of the border frame
text_color set the color of the option text
hover_color set hover color of the options
button_color set color of unselected buttons
highlight_color set the selected color of the option
font set font of the option text
command calls a command when a option is selected
multiple_selection select multiple options in the listbox, default=False
listvariable use a tkinter variable to change the listbox content
*other_parameters all other parameters of ctk_scrollable frame can be passed

Methods

  • .insert(index, option) add new option to the listbox
  • .get() get the selected option(s)
  • .delete(index) delete any option from the listbox. .delete("all") deletes all options
  • .size() get the size of the listbox
  • .activate(index) activate any option
  • .deactivate(index) deactivate any option
  • .curselection() returns indexes of selected options
  • .configure() change some parameters for the listbox.
  • .move_up(index)/.move_down(index) Reorder options in the listbox

Thanks for visiting! Hope it will help :)