Skip to content

Commit 73d3047

Browse files
Python Tkinter Treeview IV Striped Rows start
1 parent b2c543c commit 73d3047

File tree

3 files changed

+153
-3
lines changed

3 files changed

+153
-3
lines changed

Python Tkinter Treeview III Color and Style/treeviewIII.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# Python Tkinter Treeview III Color and Style
1+
# Python Tkinter Treeview IV Striped Rows
22
# Vista de árbol de Python Tkinter
33

44
from tkinter import *
55
from tkinter import ttk
66

77
root = Tk()
8-
root.title('Python Tkinter Treeview III Color and Style')
9-
root.iconbitmap('Python Tkinter Treeview III Color and Style/Icons/cocoa.ico')
8+
root.title('Python Tkinter Treeview IV Striped Rows')
9+
root.iconbitmap('Python Tkinter Treeview IV Striped Rows/Icons/cocoa.ico')
1010
root.geometry("500x600")
1111

1212
# Add some style
Binary file not shown.
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
# Python Tkinter Treeview III Color and Style
2+
# Vista de árbol de Python Tkinter
3+
4+
from tkinter import *
5+
from tkinter import ttk
6+
7+
root = Tk()
8+
root.title('Python Tkinter Treeview III Color and Style')
9+
root.iconbitmap('Python Tkinter Treeview III Color and Style/Icons/cocoa.ico')
10+
root.geometry("500x600")
11+
12+
# Add some style
13+
style = ttk.Style()
14+
15+
# Pick a theme
16+
style.theme_use("default")
17+
18+
# Configure our treeview colors
19+
style.configure("Treeview",
20+
background="silver",
21+
foreground = "black",
22+
rowheight=25,
23+
fieldbackground="silver"
24+
)
25+
26+
# CHange selected color
27+
style.map('Treeview',
28+
background=[('selected', 'blue')])
29+
30+
my_tree = ttk.Treeview(root)
31+
32+
# Define Our Columns
33+
my_tree["columns"] = ("Name", "ID", "Favorite Pizza")
34+
35+
# Formate Our Columns
36+
my_tree.column("#0", width=0, stretch=NO)
37+
my_tree.column("Name", anchor=W, width=140)
38+
my_tree.column("ID", anchor=CENTER, width=100)
39+
my_tree.column("Favorite Pizza", anchor=CENTER, width=140)
40+
41+
# Create Headings
42+
my_tree.heading("#0", text="", anchor=W)
43+
my_tree.heading("Name", text="Name", anchor=W)
44+
my_tree.heading("ID", text="ID", anchor=CENTER)
45+
my_tree.heading("Favorite Pizza", text="Favorite Pizza", anchor=W)
46+
47+
48+
# Add Data
49+
data = [
50+
51+
["John", 1, "Pepperoni"],
52+
["Mary", 2, "Cheese"],
53+
["Tim", 3, "Mushroom"],
54+
["Erin", 4, "Ham"],
55+
["Bob", 5, "Orion"]
56+
]
57+
58+
count = 0
59+
for record in data:
60+
my_tree.insert(parent='', index='end', iid=count, text="", values=(record[0], record[1], record[2] ))
61+
count +=1
62+
63+
'''
64+
my_tree.insert(parent='', index='end', iid=0, text="", values=("Jhon", 1, "Peperroni"))
65+
my_tree.insert(parent='', index='end', iid=1, text="", values=("Mary", "2", "Cheese"))
66+
my_tree.insert(parent='', index='end', iid=2, text="", values=("Tina", "3", "Ham"))
67+
my_tree.insert(parent='', index='end', iid=3, text="", values=("Bob", "4", "Supreme"))
68+
my_tree.insert(parent='', index='end', iid=4, text="", values=("Erin", "5", "Cheese"))
69+
my_tree.insert(parent='', index='end', iid=5, text="", values=("Wes", "6", "Onion"))
70+
'''
71+
#add child
72+
#my_tree.insert(parent='', index='end', iid=6, text="Child", values=("Steve", "1.2", "Peppers"))
73+
#my_tree.move("6", "0", "0")
74+
75+
# Pack to the screen
76+
my_tree.pack(pady=20)
77+
78+
add_frame = Frame(root)
79+
add_frame.pack(pady=20)
80+
81+
# Labels
82+
n1 = Label(add_frame, text = "Name")
83+
n1.grid(row=0, column=0)
84+
85+
il = Label(add_frame, text="ID")
86+
il.grid(row=0, column=1)
87+
88+
tl = Label(add_frame, text="Topping")
89+
tl.grid(row=0, column=2)
90+
91+
# Entry Boxes
92+
name_box = Entry(add_frame)
93+
name_box.grid(row=1, column=0)
94+
95+
id_box = Entry(add_frame)
96+
id_box.grid(row=1, column=1)
97+
98+
topping_box = Entry(add_frame)
99+
topping_box.grid(row=1, column=2)
100+
101+
# Add Records
102+
def add_records():
103+
global count
104+
105+
my_tree.insert(parent='', index='end', iid=count, text="", values=(name_box.get(), id_box.get(), topping_box.get()))
106+
count +=1
107+
108+
# Clear the boxes
109+
name_box.delete(0, END)
110+
id_box.delete(0, END)
111+
topping_box.delete(0, END)
112+
113+
# Remove all Recods
114+
def remove_all():
115+
116+
for record in my_tree.get_children():
117+
my_tree.delete(record)
118+
119+
# Remone One selected
120+
def remove_one():
121+
x = my_tree.selection()[0]
122+
my_tree.delete(x)
123+
124+
# Remove many selected
125+
def remove_many():
126+
x = my_tree.selection()
127+
for record in x:
128+
my_tree.delete(record)
129+
130+
131+
132+
133+
# Buttons
134+
add_rercord = Button(root, text="Add Record",command=add_records)
135+
add_rercord.pack(pady=20)
136+
137+
# Remove All
138+
remove_All = Button(root, text="Remove All",command=remove_all)
139+
remove_All.pack(pady=10)
140+
141+
# Remove One
142+
remove_one = Button(root, text="Remove One Selected", command=remove_one)
143+
remove_one.pack(pady=10)
144+
145+
# Remove many Selected
146+
remove_many = Button(root, text="Remove Many Selected", command=remove_many)
147+
remove_many.pack(pady=10)
148+
149+
150+
root.mainloop()

0 commit comments

Comments
 (0)