Modern GUI Design with TTKBootstrap - Tkinter TTKBootstrap 1

In this video I'll start to show you the TTKBootstrap library for Tkinter.
TTKBootstrap allows you to create much more modern looking GUI's for Tkinter.
It's modeled after the hugely popular Bootstrap CSS framework for building websites.
Choose from dark themes, or light themes and go from there!
#tkinter #codemy #JohnElder
Timecodes
0:00​​ - Introduction
1:25 - Dark Themes
2:00 - Light Themes
2:30 - Check Out The Docs
2:42 - Pip Install TTKBootstrap
3:33 - Basic Usage
5:08 - Style Guide
7:29 - API Docs
8:24 - Conclusion

Пікірлер: 117

  • @TkinterPython
    @TkinterPython Жыл бұрын

    ▶ Watch TTKBootstrap Playlist ✅ FREE Tkinter Widget Book bit.ly/3hphbwA bit.ly/3K4qlZC ▶ See More At: ✅ Subscribe To My KZread Channel: Tkinter.com bit.ly/3Pk1By4 ▶ MASSIVE TKINTER.COM DISCOUNT ✅ Join My Facebook Group: 30% off with coupon code: youtube bit.ly/2GFmOBz ▶ Get The Code For This Video bit.ly/3dCzz2K

  • @izzyanalytics4145
    @izzyanalytics4145 Жыл бұрын

    Great video. I’m the author of this library and I’m very much looking forward to seeing all this through someone else’s eyes as well as mining all the helpful feedback in the comment section. 😊

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Awesome, I'm really enjoying the library so far...and I think everyone else here on the channel is too!

  • @Smart_Coder7

    @Smart_Coder7

    4 ай бұрын

    Hi, Can you pls tell me How to convert the GUI made of ttkbootstrap using Pyinstaller because I am facing some Problems.

  • @almighysanti3061
    @almighysanti3061 Жыл бұрын

    Please more tutorials with this tkinter framework 😁👍🏽

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Will do!

  • @prayerlifecontinous
    @prayerlifecontinous Жыл бұрын

    Too great impatient to see more videos from you to master this one! congrats !

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Thanks!

  • @EFoxVN
    @EFoxVN Жыл бұрын

    Ooohhh, this makes me excited. I can't wait for the new videos. Toodles!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    me too

  • @holycow4889
    @holycow4889 Жыл бұрын

    Oh wow, looks awesome. I remember when CustomTkinter was the "big deal" but this library kills it all

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Yep

  • @lioninaboxgames
    @lioninaboxgames Жыл бұрын

    Thank you, your tutorials are always amazing!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Very welcome, thanks for watching!

  • @yeisonrondon7394
    @yeisonrondon7394 Жыл бұрын

    Thank you for the info! I'm definitely going to use it

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Happy to hear it!

  • @capability-snob
    @capability-snob Жыл бұрын

    Wow, this is stunning!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Right?!

  • @epcg2media
    @epcg2media Жыл бұрын

    YES! FINALLY! Thank you john

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Welcome!

  • @Omgtired
    @Omgtired Жыл бұрын

    Thanks man, your tutorial helped me getting started with tkinter.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Awesome!

  • @francoisharmse8813
    @francoisharmse88137 ай бұрын

    video 1 - already love this!

  • @TkinterPython

    @TkinterPython

    7 ай бұрын

    Happy to hear it!

  • @mechwarrior83
    @mechwarrior83 Жыл бұрын

    Sounds like a great new playlist!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    should be fun!

  • @mahmoudabuzamel7038
    @mahmoudabuzamel7038 Жыл бұрын

    Thank you! That was interesting as I would never have thought we can migrate bootstrap to desktop via tkinter!!!!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Pretty exciting!

  • @josesaumell2908
    @josesaumell29089 ай бұрын

    This was very useful, Thank you!

  • @TkinterPython

    @TkinterPython

    9 ай бұрын

    Welcome!

  • @BeckyBenton
    @BeckyBenton6 ай бұрын

    Terrific and useful tute!

  • @TkinterPython

    @TkinterPython

    6 ай бұрын

    Thanks!

  • @rhornak2381
    @rhornak2381 Жыл бұрын

    Amazing video thank you !

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Welcome!

  • @abdelafnin8843
    @abdelafnin8843 Жыл бұрын

    Thank you for the info

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Welcome!

  • @JakkeJakobsen
    @JakkeJakobsen Жыл бұрын

    I'm playing around with tkinter and Spotify API to generate playlists based on genres and release date filters, this came at a perfect time as CustomTKinter lacks too much!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Awesome

  • @angelus806
    @angelus806 Жыл бұрын

    You should have millions of suscribers!

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    I agree! Tell your friends!

  • @centralcodingethiopia
    @centralcodingethiopia Жыл бұрын

    Thankful 🙏

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Thanks!

  • @giovannigiorgio6026
    @giovannigiorgio6026 Жыл бұрын

    Good video

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Thanks!

  • @sovereignlivingsoul
    @sovereignlivingsoul Жыл бұрын

    i am not a fan of these css frameworks however as I am just starting to develop websites using python, I like the idea of using a css framework to help in the learning process, I started building websites before frameworks became popular and despite some experimentation with them, I still find hard coding my css to be a more stable way of design. I look forward to your future videos on this.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    :-)

  • @naseral-qaydeh9804
    @naseral-qaydeh9804 Жыл бұрын

    I think that one of the best things that the KZread algorithms suggested to me is your tkinter course, and here it is doing it again. Thank you very much John. I have a question please, when I'm trying to reduce the size of the Tk main window after executing the code, some of the widgets like disappear, knowing that I did make their sizes relative to the screen size (a percentage), how can I solve this problem. Excuse my mid level English if there is any mistake, and thank you in advance.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    You're very welcome. When you resize the window you may have to explicitly resize the widgets using .config()

  • @vladmakrov8394
    @vladmakrov83948 ай бұрын

    Amazing tutorial, thanks a lot. I have a question, i would like to use the localization in French. (C:\Python310\Lib\site-packages\ttkbootstrap\localization\msgs.py) How can i do that in my main.py? Thank you again.

  • @omoroot
    @omoroot4 ай бұрын

    Thanks. Help me please. How to delete padding or margin (padx) into cell in ttkbootstrap.tableview.Tableview?

  • @yheetron6931
    @yheetron6931 Жыл бұрын

    Awesome video I'm really excited to use this! One problem I'm having is when I run any program using ttkbootstrap the first time I run the program the styles on the widgets load in fine. Next time I run the program the styles don't load in and it looks like a normal tkinter widget again. Any idea why this might be happening? (I'm using the anaconda installation of spyder to write my python code so I'm wondering if it's an issue with spyder). Edit: The window theme (superhero in my case) also extends to all my other GUI programs even when they don't use ttkbootstrap so I wonder if something isn't closing right

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    There's no way that should even be possible. It could be an anaconda/spyder thing.

  • @AmitShukla-vw2xs
    @AmitShukla-vw2xs Жыл бұрын

    Hi, Lovely videos, truly inspiring. I have one request , can you please make a video on centralized log monitoring of application not system in tkinter 👍

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    logging isn't really my thing, I'm not a systems admin...

  • @RichardDamon
    @RichardDamon Жыл бұрын

    This looks like.a good way to refresh an application to a newer look. That has been my biggest complaint with Tkinter.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Definitely

  • @steveholder7289
    @steveholder7289 Жыл бұрын

    I think the reason they suggest importing ttkbootstrap as ttk is that it makes it easy to port a project from ttk. In a project I just changed the import and it converted mostly flawlessly.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Interesting

  • @steveholder7289

    @steveholder7289

    Жыл бұрын

    @@TkinterPython Pretty sure the only parts that didn't was some custom style stuff.

  • @Geeky_gamer745
    @Geeky_gamer745 Жыл бұрын

    Please More Tutorials on This Tkinter Framework😊🙂

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Will do!

  • @davidpimental6704
    @davidpimental6704 Жыл бұрын

    Have you done much with the TableView? I'm trying to understand how to either get the selected row from binding a single / double click to the TableView, or editing the short-cut (right click) menu to add an additional / custom action to the menu? Any ideas / recommendations on that? Much Thanks, David

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Yeah, I have a three hour deep dive video on it (well treeview, which is the same thing): kzread.info/dash/bejne/qphksJeYpZzTptY.html

  • @davidpimental6704

    @davidpimental6704

    Жыл бұрын

    @@TkinterPython I will watch it. But I'm looking for an answer to how to get the selected row of the TableView and how to set it to a binding or change the right click menu to add a custom action. Can you explain how to do this? Or do you explain it in your video?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    @@davidpimental6704 lol You asked a question and I pointed you to the video. Figure it out man.

  • @davidpimental6704

    @davidpimental6704

    Жыл бұрын

    @@TkinterPython I looked at your code and I understand how you handle row selection in the TreeView widget and it all seems straightforward. Thanks for the video. However, the ttkbootstrap TableView widget is obviously not the same as the TreeView widget - it doesn't share the same properties as TreeView - for example, the selection property on the rows. There is no selection property on the TableView widget. But, if I can't figure that out, I'll use the TreeView widget, as you demonstrated, it acts the same way as the TableView widget.

  • @fslurrehman
    @fslurrehman Жыл бұрын

    That's what I was missing in tkinter. Though I know it's very powerful. I think it can create same ui and give same ux as pyqt can

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Yep

  • @joaoalmirante4268
    @joaoalmirante4268 Жыл бұрын

    Hey. First of all thanks for showing a good distro of tkinter. Do you know if this works on python 3.11? Because most of then not work on recent python version.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    As far as I know, it does.

  • @mantazz679
    @mantazz679 Жыл бұрын

    gotta love open source! Let's just ignore the old ttk widgets that everyone created their production code with, and create everything over again.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Yep

  • @Nadeemkhandir
    @Nadeemkhandir Жыл бұрын

    i am using ttkbootstrap when my one page is destroyed and agian comback to that window the the bootstarp not working how to fix it

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Sorry, don't know what you mean by "page" or by "destroyed".

  • @usmankhawar888
    @usmankhawar888 Жыл бұрын

    Its great they considered Treeview as far as I know Custom Tkinter has no Treeview... I wonder when they'll consider modifiying the tilebar. Neither Tkinter nor Custom Tkinter and I am not sure about TTKBootstrap non has given the functionality to modify the Titlebar. You can just add logo or disable button (maximize, minimize etc) or go to full screen mode with no Title Bar. No where I found where you can actual style the Title bar

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    You have to disable it and then build your own titlebar. I have a video on that on the codemy channel.

  • @usmankhawar888

    @usmankhawar888

    Жыл бұрын

    @@TkinterPython Yes sir I know that. Just hoping that if they implement that would save a lot of hastle

  • @eduardomarmolejo7681
    @eduardomarmolejo7681 Жыл бұрын

    when i run my code it says no module named ttkbootstrap even though i downloaded it and confirmed. Maybe it's not in the right destination?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    What do you mean by downloaded? To install it you use pip install.

  • @user-rr2vs8zl4u
    @user-rr2vs8zl4u Жыл бұрын

    Thank you~~ As Always~~

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Very welcome!

  • @BenceJBalogh
    @BenceJBalogh4 ай бұрын

    Is this also super difficult/impossible to compile with pyinstaller using --onefile?

  • @TkinterPython

    @TkinterPython

    3 ай бұрын

    try it and see :-p

  • @NarenderSinghRai
    @NarenderSinghRai Жыл бұрын

    All seems good .. but i am unable to fetch date from bootstrap DateEntry widget? Can you explain how to do that.. I read the module i can not see that it support fetching date from dateentry widget... I hope you see it and provide an explanation.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    I've answered you about this several times...

  • @johnbennett1465
    @johnbennett1465 Жыл бұрын

    I tried converting a simple tkinter program to use ttkbootstrap. Just switching the import mostly worked. The problem is that it quietly ignores my setting the background color and the border for my Canvas objects. If the options have changed, why don't I get an error? If they are correct, why don't they work? I am using borderwidth=2, bg='white', highlightbackground='black', highlightthickness=2 . I have tried to search for documentation, but found nothing related to what arguments Canvas expects. Thanks in advance for any help you can provide.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    You can't expect to just load ttkbootstrap and everything works from your old code without making any changes. That's not how it's supposed to work. I will try to get into canvas stuff with this library at some point, but I don't have any videos on it at the moment.

  • @johnbennett1465

    @johnbennett1465

    Жыл бұрын

    @@TkinterPython I was expecting to get errors that I would have to fix. I was not expecting that parameters would be accepted but ignored. I was also not expecting a complete lack of documentation on what changes are needed. If such documentation exists, it is well hidden.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    @@johnbennett1465 just use the regular tkinter canvas, or check the docs here: ttkbootstrap.readthedocs.io/en/latest/styleguide/legacywidgets/

  • @johnbennett1465

    @johnbennett1465

    Жыл бұрын

    @@TkinterPython thanks. I was using the TK version, but I missed seeing the autostyle=False part.

  • @johnbennett1465

    @johnbennett1465

    Жыл бұрын

    @@TkinterPython Just FYI, I only had to do the following changes to make my program work. Change from tkinter import ttk to import ttkbootstrap as ttk Change root = tk.Tk() to root = ttk.Window() Add autostyle=False in two places. So initial conversion is easy IF you know a few gotchas. I expect a larger program would run into a few more issues, but it is nice to quickly get it running. Figuring out the needed changes to the look is much easier once the code runs correctly.

  • @HansMartin-yq9qz
    @HansMartin-yq9qz Жыл бұрын

    is there a solid drag and drop designer, like in qt5 ?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    no

  • @NamasenITN
    @NamasenITN Жыл бұрын

    It seems you gave a lot of emphasis on the color themes. Is it worth it beyond that? I could not figure it out from your video.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Sorry, I don't know what you're talking about.

  • @RobertLugg
    @RobertLugg Жыл бұрын

    Does this work in TCL or specific to Python?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    this is a python library for tkinter.

  • @dustinalcantara5072
    @dustinalcantara50725 ай бұрын

    where do i type the pip install ttkbookstrap?please reply thank u

  • @TkinterPython

    @TkinterPython

    5 ай бұрын

    Into your terminal

  • @dustinalcantara5072

    @dustinalcantara5072

    5 ай бұрын

    thank you @@TkinterPython

  • @bsdooby
    @bsdooby Жыл бұрын

    But can it be used with Tcl/Tk?

  • @Codemycom

    @Codemycom

    Жыл бұрын

    What do you mean? This is specifically for Tkinter

  • @AndreiDante
    @AndreiDante10 ай бұрын

    Why does nobody think about the need to get the meter current count? You can set the meter below 0 and can't create a rule that won't allow you to do so.

  • @TkinterPython

    @TkinterPython

    10 ай бұрын

    Are you maybe confused about where you're posting this comment? Of course you can create a rule to do anything you want with the meter. And you can get the 'amountused' anytime you want.

  • @user-fc3pg5xn5l
    @user-fc3pg5xn5l5 ай бұрын

    Does learning a TTkBootstrap replace learning tkinter?

  • @TkinterPython

    @TkinterPython

    5 ай бұрын

    No

  • @user-fc3pg5xn5l

    @user-fc3pg5xn5l

    5 ай бұрын

    Thank you very much for explaining@@TkinterPython

  • @TkinterPython

    @TkinterPython

    5 ай бұрын

    sure thing@@user-fc3pg5xn5l

  • @Arn-kg5tf
    @Arn-kg5tf Жыл бұрын

    Widget canvas or windows....wich may be AT thé toplevel. Searching controls for scada and industrial system, animated pump, l'AMP etc... this may not bé helphful, the canvas IS more low level and more extensible also this widget may bé cool for chose color..

  • @aztrodj82
    @aztrodj82 Жыл бұрын

    Will tkinter compile for mobile?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    No

  • @Arn-kg5tf

    @Arn-kg5tf

    Жыл бұрын

    Yes its work for me using pydroid, trouble begins with file system that smells Google control over your data...especially sqlite3 but its work great!! In fact python does what java had promise . I made voice recognize to control plc on Android studio that IS thé worst programming i v e made ...java no more !! Google voice recognize no more. Microsoft sapi 5 had been simple for use but Microsoft need to change thing that works...

  • @contraplano3157
    @contraplano3157 Жыл бұрын

    Flet is also Good?

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    Flet is for flutter, it has nothing to do with tkinter.

  • @contraplano3157

    @contraplano3157

    Жыл бұрын

    @@TkinterPython Flet is a framework that allows building interactive multi-user web, desktop and mobile applications in your favorite language without prior experience in frontend development. You build a UI for your program with Flet controls which are based on Flutter by Google. Flet does not just "wrap" Flutter widgets, but adds its own "opinion" by combining smaller widgets, hiding complexities, implementing UI best-practices, applying reasonable defaults - all to ensure your apps look cool and professional without extra efforts.

  • @contraplano3157

    @contraplano3157

    Жыл бұрын

    It is just one more Gui. I just asked your opinion about it.

  • @TkinterPython

    @TkinterPython

    Жыл бұрын

    @@contraplano3157 I know what flet is.