Treeview - Python Tkinter GUI Tutorial

Поделиться
HTML-код
  • Опубликовано: 5 сен 2024
  • In this video I'll show you how to use the Treeview in Tkinter.
    Treeview is a ttk widget that creates a sort of table for data in a visually appealing way. It's great for visualizing data from a database, or from a spreadsheet, or any other large amount of data that you want to output onto the screen.
    There's a TON of things you can do with the Treeview, and in this video we'll just introduce the basic usage of it.

Комментарии • 233

  • @Codemycom
    @Codemycom  4 года назад +7

    ▶️ Watch Entire Tkinter Playlist ✅ Subscribe To My RUclips Channel:
    bit.ly/2UFLKgj bit.ly/2IGzvOR
    ▶️ See More At: ✅ Join My Facebook Group:
    Codemy.com bit.ly/2GFmOBz
    ▶️ Learn to Code at Codemy.com ✅ Buy a Codemy T-Shirt!
    Take $30 off with coupon code: youtube1 bit.ly/2VC9WUN
    ▶️ Get The Code
    bit.ly/3fLFQ8p

  • @MrGEEK-ii8bp
    @MrGEEK-ii8bp 4 года назад +31

    First comment just to appreciate the consistency and efforts you put in this and your way of teaching which makes doing python a lot more interesting!

    • @Codemycom
      @Codemycom  4 года назад +6

      Thanks! I appreciate that!

  • @PeeOrbital
    @PeeOrbital 2 года назад

    Gotta love John Elder. What a master at teaching.

  • @codegeassprogramming
    @codegeassprogramming 2 года назад

    Thanks Sir No one teaches tkinter in depth like you you have helped me earn money thanks sir

  • @linuxguardian8596
    @linuxguardian8596 4 года назад +2

    Legend says, he still is doing tkinter tutorials to this day...

    • @sudin99and81
      @sudin99and81 4 года назад +1

      obviously???

    • @linuxguardian8596
      @linuxguardian8596 4 года назад

      @@sudin99and81 wow dude you are really smart for not understanding a joke

    • @Codemycom
      @Codemycom  4 года назад

      hahaha

    • @sudin99and81
      @sudin99and81 4 года назад

      @@linuxguardian8596 i was born smart

  • @judeleon8485
    @judeleon8485 4 года назад +5

    Thanks so much John, I appreciate you so much for taking on this topic. You are awesomely great

    • @Codemycom
      @Codemycom  4 года назад

      You are so welcome! glad you enjoyed it!

  • @cuitaro
    @cuitaro 4 года назад +2

    This video was quite early!
    A.K.A
    Your videos are AWESOME!
    They are like 20% cooler than other tutorials!

  • @user-fk4xm2fd6y
    @user-fk4xm2fd6y 4 года назад +1

    I hope you to make video on how to edit the shape of the treeview colors , padding and other stuffs .
    You are the best one who explains tkinter widgets.

    • @Codemycom
      @Codemycom  4 года назад

      Will probably be doing that, yes :-)

  • @Hex-Scholar
    @Hex-Scholar Год назад +9

    We can also do this for hiding the ghost column:
    tree = ttk.Treeview(root, columns=columns, show='headings')
    The show='heading' hides the first column (column #0) of the Treeview.
    The show option accepts one of the following values:
    'tree' - shows the column #0.
    'heading' - shows the header row.
    'tree headings' - shows both column #0 and the header row. This is the default value.
    '' - doesn’t show the column #0 or the header row.
    Right ?

  • @programmerlol2041
    @programmerlol2041 3 года назад

    Ok I have to say this you are explaining so good and your voice is clear good . This channel should deserve 1million subscribers👍👍👍😎😍😊😀

  • @santiagocollados8986
    @santiagocollados8986 3 года назад +1

    Thanks so much! I was looking for this for many days on the web!!!

  • @daveleonard3280
    @daveleonard3280 3 года назад +1

    This video and the next few helped a TON to learn tkinter Treeview! Thanks a lot!

    • @Codemycom
      @Codemycom  3 года назад

      Awesome, glad it was useful to you!

  • @u2watchermirador101
    @u2watchermirador101 4 года назад +1

    Thanks John! This is what I was waiting for from you. 👍🏾👍🏾👍🏾👍🏾👍🏾❤️❤️❤️

    • @Codemycom
      @Codemycom  4 года назад

      Awesome, glad I could help!

  • @Rulzan
    @Rulzan 9 месяцев назад

    Although your trainings are free, i bought them on udemy. Thank you so much, i really learned a lot!

    • @Codemycom
      @Codemycom  9 месяцев назад

      thanks, appreciate it!

  • @aloksharma6095
    @aloksharma6095 3 года назад

    Thank you sir for your whole playlist and efforts . Blessing from India

    • @Codemycom
      @Codemycom  3 года назад

      Glad you enjoy them!

  • @adrielbradley6677
    @adrielbradley6677 4 года назад +4

    I was looking forward to this one. Great one!

    • @Codemycom
      @Codemycom  4 года назад +1

      Glad you liked it!

  • @gabrielpena5829
    @gabrielpena5829 3 года назад

    These videos are amazing. The guy who gave this video a dislike is crazy

  • @realmercure1447
    @realmercure1447 2 года назад

    Good demonstration of how to use a treeview to make a table !?

    • @Codemycom
      @Codemycom  2 года назад

      Glad you enjoyed it!

  • @eesakamaldien1917
    @eesakamaldien1917 3 года назад +2

    what a great video! thank you so much you are my new guru! definitely subscribed

  • @rogeriovaz4420
    @rogeriovaz4420 3 года назад +1

    Simply, the best. Thanks.

  • @bryanttejeda875
    @bryanttejeda875 4 месяца назад

    I found the video I needed,that stupid ghost column seemed inmortal, thank you

    • @Codemycom
      @Codemycom  4 месяца назад +1

      Glad you got it sorted out!

  • @mathiasvillalbadiaz6433
    @mathiasvillalbadiaz6433 3 года назад

    Uno de los pocos cursos en ingles que podes entender sin hablar Ingles, Que Grande Codemy, muchas Gracias

  • @shauryastudy8667
    @shauryastudy8667 2 года назад

    Thankyou John sir !! you really help me to solve a big problem of my project

  • @RyanDanielG
    @RyanDanielG 3 года назад

    Smash that like button guys n gals! its free! great python tkinter tutorial, Codemy. Thanks

  • @mr.RAND5584
    @mr.RAND5584 2 года назад

    Beautiful. Tables i love tables, csharp, java, vb.net, html, javafx. Thank you sir.

  • @connguyen8694
    @connguyen8694 2 года назад

    Thanks for your helpful videos. It's ideal if you have a tutorial video showing how to add multiple rows (such as data in this treeview tutorial video) into a database (such as MySQL). All users have to do is to press a button to save those rows of data in the treeview into the db. Many thanks!

  • @azraelaxel3124
    @azraelaxel3124 10 месяцев назад

    Very good tutorial!, be aware, in the code i made, if i hide the first column (the #0), will hide the "+" icon for drop down/up the list

  • @bennysalim354
    @bennysalim354 3 года назад

    Yes.. this is what i need instead of using listbox. Thank you Sir

  • @solariz_galaxy
    @solariz_galaxy Год назад

    Great tutorital. I know it's an old video but it would be really nice if you could do zoom out of the display. It's hard to see the all lines of code (or most of them) while you're explaining.

    • @Codemycom
      @Codemycom  Год назад

      the code is in the pinned comment, as always.

  • @ab123-j7v
    @ab123-j7v 2 года назад

    Great lesson, thank you for your time and efforts.

  • @lecomtegaetan8120
    @lecomtegaetan8120 3 года назад

    thank you so much , u can't imagine how it's helping me rn =)

  • @erensolmaz2435
    @erensolmaz2435 2 года назад

    thanks for treeview lessons

    • @Codemycom
      @Codemycom  2 года назад

      Glad you liked em!

    • @erensolmaz2435
      @erensolmaz2435 2 года назад

      @@Codemycom i have question, could we add new column when code is running?

    • @Codemycom
      @Codemycom  2 года назад

      @@erensolmaz2435 why not?

  • @ARUNKUMAR-op6cn
    @ARUNKUMAR-op6cn 4 года назад +1

    I was looking for this thank you sir

  • @jenilchudgar
    @jenilchudgar 2 года назад

    Congrats on 100K Subs

  • @alialavizadeh2775
    @alialavizadeh2775 3 года назад

    I've been searching for this a lot but I didn't what is the name of this widget and how it works thank you Mr.Elder

  • @phudinhtruong
    @phudinhtruong 3 года назад +1

    very helpful video

    • @Codemycom
      @Codemycom  3 года назад +1

      Thanks! Glad you liked it!

    • @phudinhtruong
      @phudinhtruong 3 года назад

      @@Codemycom i just build an app by your lesons thanks alot

    • @Codemycom
      @Codemycom  3 года назад +1

      @@phudinhtruong Awesome!

    • @phudinhtruong
      @phudinhtruong 3 года назад

      @@Codemycom love your contents

    • @phudinhtruong
      @phudinhtruong 3 года назад

      @@Codemycom what u r doing for us are so amazing

  • @mustafamontaser4955
    @mustafamontaser4955 3 года назад

    you make it so easy
    thanks a lot

    • @Codemycom
      @Codemycom  3 года назад +1

      Glad you're enjoying the videos!

  • @maksymprotsak3316
    @maksymprotsak3316 Год назад

    Thank you for a lesson!

  • @pythoncoder6850
    @pythoncoder6850 4 года назад

    Your tkinter videos really helped me out,
    And can you make videos about Kivy mobile application
    Looking forward 👀

    • @Codemycom
      @Codemycom  4 года назад

      Yep, Kivy coming very soon...maybe next week.

    • @pythoncoder6850
      @pythoncoder6850 4 года назад

      @@Codemycom Thanks

    • @Codemycom
      @Codemycom  4 года назад

      @@pythoncoder6850 for sure...Kivy is fun

  • @danielalegriasallo5551
    @danielalegriasallo5551 3 года назад

    thanks for the tut.

  • @parsabahrambeik4381
    @parsabahrambeik4381 3 года назад

    Thank you very much for your video.

  • @zenitnadir2092
    @zenitnadir2092 8 месяцев назад

    Hi John, thank you for the tutorial. I have a little problem, I hope you could help me. I have two Treeviews next to each other, and I want them to be of the same width. The problem is that I have many headings, so the first one occupies almost all the space, and the second one is superthin (as much as the space that's left allows).
    Can you give me a hint on how to fix the width of treeviews? Thank you a lot, your videos are very helpful :D

  • @uekihunter752
    @uekihunter752 Год назад

    I think that ghost column was allocated for the numbering of the items.... MAYBE....

  • @user-ti8fv1ys9b
    @user-ti8fv1ys9b 3 года назад +1

    Is there a way to not make the columns disappear out of frame when you resize the column using the resize bar on their right?

  • @nestorarrastiacovella9803
    @nestorarrastiacovella9803 Год назад

    Thanks for this video #116. My question: Once we have the table, it is posible ti completely hide it and show a new one with same headers buth diferent rows data?

    • @Codemycom
      @Codemycom  Год назад

      Sure, I probably have videos back at the beginning of the playlist on hiding widgets. Then you would just build a second one with whatever headers you wanted.

  • @sarahmadhavank3925
    @sarahmadhavank3925 3 года назад

    Thanks a lot sir !! It was very helpful

    • @Codemycom
      @Codemycom  3 года назад

      Glad it was helpful!

  • @mysterium364
    @mysterium364 8 месяцев назад

    I am trying to figure out how to put check boxes for selection state on the side. I'm sure I will figure it out soon.

  • @grantpeterson2524
    @grantpeterson2524 3 года назад +1

    Thank you so much for your helpful videos! Just curious, is there a reason you are using an iterator variable for your for loops instead of enumerate()? Just curious if I have been doing it wrong or if there are any serious drawbacks to using enumerate. Thanks!
    EDIT: Specifically at 18:05

    • @Codemycom
      @Codemycom  3 года назад

      No particular reason.

  • @user-zw5ri8xe2u
    @user-zw5ri8xe2u 9 месяцев назад

    Hi everyone! I couldn't find information on the Internet. Therefore, I just wanna ask in here.
    Is it possible to display numbers in treeview tkinter with separator , isn't?

  • @improveyourlisteningskills2116
    @improveyourlisteningskills2116 2 года назад

    Thanks a lot 😄

  • @alkasinha8131
    @alkasinha8131 2 года назад

    its a great effort sir, I have a question that in most of software grid is used to separate between cells in display here how can we deploy grids in Treeview, please comment

  • @akshitstenaa
    @akshitstenaa 3 года назад

    you the BEST

  • @sinakarimi8273
    @sinakarimi8273 3 года назад +1

    Hello john, can we add a button as a value of a cloumn in treeview?

  • @ferenckovacs1648
    @ferenckovacs1648 2 года назад

    Is it possible to fill columns with data and not by row i mean column by column like i mean is it possible to fill this with a dataframe?

  • @joy2000cyber
    @joy2000cyber Год назад

    14:20 if I need the little check box not on column #0, say on column #2, what to do? Thanks!❤

  • @yafethtb
    @yafethtb 2 года назад

    17:46 I think rather than manually using count as variable, it will be better to use enumerate instead.

    • @Codemycom
      @Codemycom  2 года назад

      My way works...enumerate works...there are always a million ways to do anything. There is no right or wrong in coding, really.

  • @mr.perfect9786
    @mr.perfect9786 2 года назад +1

    my_tree['show'] = 'headings'
    and the column with #0 will be hidden

  • @Knud451
    @Knud451 3 года назад

    Thanks a lot for all the videos! They're super helpful! A very general question, I need to present tabular data from a SQL query. What is the best way to do that? Frame, Treeview, Table class, something else? It doesn't have to be super fancy, its more about getting data on the screen :)

    • @Codemycom
      @Codemycom  3 года назад +1

      It depends completely on you and what you need. I have lot's of videos throughout this playlist on that very thing. Take you pick.

  • @ANIKETMOHANK-CE-
    @ANIKETMOHANK-CE- 8 месяцев назад

    Sir,I want to show another treeview when I click on row of treeview but it is happening for anywhere click on treeview,
    Can you help me

  • @NotBeHaris
    @NotBeHaris 4 года назад

    another great tutorial.

  • @govindarajg252
    @govindarajg252 3 года назад

    Thanks Sir, Very Nice Use Full Code

  • @consultmohamedgamal5643
    @consultmohamedgamal5643 3 года назад

    very good

  • @luigi2606
    @luigi2606 3 года назад

    how do you do for many text, example: some lines of text

  • @kabir73722
    @kabir73722 2 года назад

    Hellow Dear could you explain about how we can do that start column from right side to left side for Arabic language?Thanks

  • @armaankhaitan6741
    @armaankhaitan6741 Год назад

    How to attach a command to each treeview row. Like when i select a row some function of my creation is run

    • @Codemycom
      @Codemycom  Год назад +1

      I have tons of videos on treeview, check them out

  • @paulp-g4u
    @paulp-g4u 2 года назад

    Thanks man

  • @gmramkumar9536
    @gmramkumar9536 3 года назад

    thanks dude

  • @goforbrokefilmstudios
    @goforbrokefilmstudios 3 года назад

    Is there a way to prevent the expansion triangle from being indented in sub rows? I want my expansion triangles to always be up against the left side no matter how indented the rest of the row is.

  • @masekin
    @masekin 2 года назад

    Thanks

  • @miraceti56
    @miraceti56 4 года назад

    hi,
    the minwidth=0 make the first column disapear too :=)
    very good tutorials
    thanks a lot

  • @tazulislam2698
    @tazulislam2698 2 года назад

    Thanks. Waiting for pagination in treeview. Please!

    • @Codemycom
      @Codemycom  2 года назад

      Interesting suggestion!

  • @dkildkil234
    @dkildkil234 Год назад

    How can I insert text with spaces it's not found

  • @mf6480verstraete
    @mf6480verstraete 4 года назад +1

    hey thank you so much for the awesome tutorials again! I'm having a little bit of trouble. I'm getting an error saying: unknown option "-idd". That's pretty strange becaus it is an option ;p can someone help me pleas becaus I really want to continue with these tutorials they're verry interesting. Greetings from Belgium!!!

  • @nicolasdegaudenzi2802
    @nicolasdegaudenzi2802 5 месяцев назад

    Hii, is there any chance I can add a footer to my treeview, that allows me to watch the contents the whole time, as the heading does. Thank you!

  • @harshasrikanugula6225
    @harshasrikanugula6225 Год назад

    Hi john, how can we add check boxes with select all option and to select and unselect the rows in a treeview?

  • @alpapatel5182
    @alpapatel5182 3 года назад +1

    Hello John !
    Can we add sqlite3 database data to this tree view?
    Plz reply !

  • @s.v.prashath7441
    @s.v.prashath7441 3 года назад

    sir actually i want to fill a *cell* with many string.... if i fill the by treeview its hiding so pls tell how to increase the row height like column sir

  • @sportiano3348
    @sportiano3348 2 года назад

    thanks man👍
    but i have a question , how can i show treeview values in text widget and print by .txt file or Excel file??

    • @Codemycom
      @Codemycom  2 года назад +1

      I have videos on all that

  • @scott8940
    @scott8940 4 года назад

    Where do you obtain a man page or reference for most up to date and all of the tkinter commands, language syntex, etc. ?

    • @Codemycom
      @Codemycom  4 года назад

      Not sure there are any tkinter man pages

  • @zeevholodovski4727
    @zeevholodovski4727 3 года назад

    I need to scan a server, that has values and nodes. Each node may have a children nodes and so on. I scan it recursively. Is it possible to use Treeview to show the contects of a server?

    • @Codemycom
      @Codemycom  3 года назад

      what contents? Treeview can show any data that you have access to

  • @vishaldedavat6835
    @vishaldedavat6835 3 года назад

    sir how to clear the treeview from gui .. i am making a gui for dbms project.. and i am using treeview to display table.

    • @Codemycom
      @Codemycom  3 года назад

      I discuss this in an earlier treeview series on the channel: ruclips.net/video/tvXFpMGlHPk/видео.html

  • @zhannashangitova
    @zhannashangitova 3 года назад

    Please Could you tell me, if I need to create a database and add information by rows (not by columns). How Can i make it?

    • @Codemycom
      @Codemycom  3 года назад

      I have videos on using a database further in the playlist. And you have to have both rows and columns, it's impossible otherwise.

  • @shlokbajaj2133
    @shlokbajaj2133 3 года назад

    if we are writing from tkinter import *
    why do we need tp write
    from tkinter import ttk?

    • @Codemycom
      @Codemycom  3 года назад

      Because that's just how it works

  • @jerrysavarino2113
    @jerrysavarino2113 2 года назад

    Hi John. As always, great tutorial and very well explained! I am building an app where I can generate a different Treeview based on different options selected from one or more comboxboxes. I would select 1 or more comboboxes and then hit a button called 'Generate Report' and it will display the data in the treeview. What I am struggling to do is each time I hit the 'Generate Report' button, it always creates another Treeview widget below the previous Treeview widget. I want the function to be able to 'remove' the treeview widget and then display the different Treeview widget once the function has completed. I have tried placing pack_forget() in certain places in the function but it doesn't seem to be working. Any tips on what things I need to look at or look into?

    • @Codemycom
      @Codemycom  2 года назад

      Many ways to do it, pack_forget, destroy, .config, etc. You could put each treeview in a frame then hide/show the frames...you could use the same treeview but just delete all the data in it each time...like I said, there's just a ton of ways to do it. If pack_forget didn't work for you, it's probably because you didn't do it correctly :-p

  • @muratdramal2036
    @muratdramal2036 2 года назад

    Thank you for your wonderful videos! How can I add the the indices of the dataframe to the rows of the phantom column when I initialize the tree with the following code?
    tree = ttk.Treeview(root)
    tree.pack()
    df=pd.read_excel("Iris.xlsx")
    df_rows=df.to_numpy().tolist()
    cols = list(df.columns)
    tree['columns'] = cols
    for col in cols:
    tree.heading(col, text=col)
    for row in df_rows:
    tree.insert("", "end", values=row)
    tree.column('#0', width=50, stretch='no')

  • @chiahsiungliang6763
    @chiahsiungliang6763 2 месяца назад

    謝謝!

  • @user-rr2vs8zl4u
    @user-rr2vs8zl4u Год назад

    Thank you~~As Always~~!!

  • @ClusterSeries
    @ClusterSeries 4 года назад +1

    Can we send emails using python ?? 🤔

  • @ramlaxmanjanki
    @ramlaxmanjanki Год назад

    How to save tree data as pdf or print hardcopy

  • @hariramreddy9019
    @hariramreddy9019 3 года назад

    Can we create multiple treeview associated with combobox so that for each option in combobox will have separate treeview

    • @hariramreddy9019
      @hariramreddy9019 3 года назад

      Any help regarding this small problem can any one give me small logic i have tried but unable to get exact logic

    • @Codemycom
      @Codemycom  3 года назад

      Sure, why not?

  • @lemartien25000
    @lemartien25000 6 месяцев назад

    We need exemple using the result off query select of table and insert the result in treeview. Sqlite3.

    • @Codemycom
      @Codemycom  6 месяцев назад

      I've got videos on that on the playlist

  • @LAVEMOBIT
    @LAVEMOBIT 2 года назад

    Good morning, can you help me with Python?
    I have a Python program that takes data and writes it to a database.
    But I need to add a function that takes the registration date, and counts 90 days, and after 90 days print a message to the user informing that the registration already has 90 days, you know?
    I'm researching on the internet but I'm not able to develop something that works, I don't know anyone who understands and can help me with this, can you help me?

    • @Codemycom
      @Codemycom  2 года назад

      This is trivial, but sorry I don't have any videos on it and don't do consulting work.

  • @websell1541
    @websell1541 2 года назад

    thanx

  • @akcandlestick8948
    @akcandlestick8948 4 года назад

    thks for this video john! sir Please how to put Treeview color

    • @Codemycom
      @Codemycom  4 года назад

      I believe you can use tags like in the text box widget

  • @nikodemkarcz310
    @nikodemkarcz310 3 года назад

    How can we upgrade treeview? I mean user will write something in entry to appear on this

    • @Codemycom
      @Codemycom  3 года назад

      I think I cover that later

  • @Romalian
    @Romalian 3 года назад

    How do you make it so the child is indented when clicked

  • @tazulislam2698
    @tazulislam2698 2 года назад

    How to cotent wrapped inside row?

    • @Codemycom
      @Codemycom  2 года назад

      Not sure what you mean

  • @danielzheleznov72
    @danielzheleznov72 3 года назад

    What is the difference between a Treeview and a Listbox

    • @Codemycom
      @Codemycom  3 года назад +1

      really? they're completely different

  • @developmentcspl8456
    @developmentcspl8456 3 года назад

    Tree Menu / Left Side Manu design Required

  • @raghulk2219
    @raghulk2219 3 года назад

    Hey thank u for the video...
    I am getting an error...
    _tkinter.tclerror item not found
    Can you clarify it please...

    • @Codemycom
      @Codemycom  3 года назад

      what's the entire error