{"id":18717183,"url":"https://github.com/akascape/ctkrangeslider","last_synced_at":"2025-04-12T13:32:03.910Z","repository":{"id":191824541,"uuid":"622496805","full_name":"Akascape/CTkRangeSlider","owner":"Akascape","description":"A range slider widget for customtkinter (extension/add-on)","archived":false,"fork":false,"pushed_at":"2024-01-24T12:31:21.000Z","size":100,"stargazers_count":37,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T08:13:45.203Z","etag":null,"topics":["customtkinter","customtkinter-range-slider","customtkinter-slider","dual-slider","range-picker","range-slider","slider-range","tkinter-range-slider","tkinter-slider"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Akascape.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"ko_fi":"akascape"}},"created_at":"2023-04-02T09:43:42.000Z","updated_at":"2025-01-15T18:31:52.000Z","dependencies_parsed_at":"2023-09-01T00:13:24.190Z","dependency_job_id":"51a63886-93ec-4f91-a97d-67bf6eb5379f","html_url":"https://github.com/Akascape/CTkRangeSlider","commit_stats":null,"previous_names":["akascape/ctkrangeslider"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akascape%2FCTkRangeSlider","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akascape%2FCTkRangeSlider/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akascape%2FCTkRangeSlider/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akascape%2FCTkRangeSlider/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Akascape","download_url":"https://codeload.github.com/Akascape/CTkRangeSlider/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248573487,"owners_count":21126840,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["customtkinter","customtkinter-range-slider","customtkinter-slider","dual-slider","range-picker","range-slider","slider-range","tkinter-range-slider","tkinter-slider"],"created_at":"2024-11-07T13:15:13.867Z","updated_at":"2025-04-12T13:32:03.636Z","avatar_url":"https://github.com/Akascape.png","language":"Python","funding_links":["https://ko-fi.com/akascape"],"categories":[],"sub_categories":[],"readme":"# CTkRangeSlider\n**A range slider widget made for [customtkinter](https://github.com/TomSchimansky/CustomTkinter)**\n\n![Screenshot](https://user-images.githubusercontent.com/89206401/229349732-0e078b00-f2b7-46e7-9774-313090253769.jpg)\n\n## Installation\n### [\u003cimg alt=\"GitHub repo size\" src=\"https://img.shields.io/github/repo-size/Akascape/CTkRangeSlider?\u0026color=white\u0026label=Download%20Source%20Code\u0026logo=Python\u0026logoColor=yellow\u0026style=for-the-badge\"  width=\"400\"\u003e](https://github.com/Akascape/CTkRangeSlider/archive/refs/heads/main.zip)\n\nDownload the source code, paste the `CTkRangeSlider` folder in the directory where your program is present.\n\n## Example\n```python\nfrom CTkRangeSlider import *\nimport customtkinter\n\ndef show_value(value):\n    print(value)\n    \nroot = customtkinter.CTk()\n\nrange_slider = CTkRangeSlider(root, command=show_value)\nrange_slider.pack(padx=30, pady=30, fill=\"both\")\n\nroot.mainloop()\n```\n\n## Arguments\n| Parameters | Details |\n|--------|----------|\n|master\t| root window, can be _tkinter.Frame_ or _CTkFrame_|\n|command\t| callback function, receives slider value as argument, two separate commands can be given by `command=(cmd1, cmd2)`|\n|variables\t| tuple: set two tkinter.IntVar or tkinter.DoubleVar objects |\n|width\t| slider width in px|\n|height | slider height in px|\n|corner_radius| corner roundness of the slider |\n|border_width\t| space around the slider rail in px |\n|from_\t| lower slider value |\n|to\t| upper slider value |\n|number_of_steps |\tnumber of steps in which the sliders can be positioned |\n|fg_color\t| foreground color, tuple: (light_color, dark_color) or single color |\n|progress_color\t| tuple: (light_color, dark_color) or single color or \"transparent\", color of the slider line before the button |\n|border_color\t| slider border color, tuple: (light_color, dark_color) or single color or \"transparent\", default is \"transparent\"|\n|button_color |\tcolor of the slider buttons, tuple: (light_color, dark_color) or single color or **((light_color_1, dark_color_1), (light_color_2, light_color_2)) for separate button colors** |\n|button_hover_color |\thover color, tuple: (light_color, dark_color) or single color|\n|button_width | width of the buttons in px |\n|button_length | length of the buttons in px|\n|button_corner_radius | corner roundness of the buttons |\n|orientation | \"horizontal\" (standard) or \"vertical\" |\n|state\t| \"normal\" or \"disabled\" (not clickable) |\n|hover | bool, enable/disable hover effect, default is True |\n\n## Methods:\n- **.configure(attribute=value, ...)**\n\n    All attributes can be configured and updated.\n    ```python\n     range_slider.configure(fg_color=..., progress_color=..., button_color=..., ...)\n    ```\n- **.set([value, value])**\n\n   Set sliders to specific float value.\n\n- **.get()**\n\n   Get current values of slider.\n   \n- **.cget(\"attribute_name\")**\n\n   Get any attribute value.\n   \n### More Details\nThis widget works just like the normal customtkinter slider widget, but it has dual slider-heads instead of one. A special thanks to [EN20M](https://github.com/EN20M) for providing the custom DrawEngine for rangeslider. \nFollow me for more stuff like this: [`Akascape`](https://github.com/Akascape/)\n### That's all, hope it will help!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakascape%2Fctkrangeslider","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakascape%2Fctkrangeslider","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakascape%2Fctkrangeslider/lists"}