Pythonの中でtkinter+MySQLは添削して調べることを実現します。
一、メインウィンドウの設定
1.添削の関数を定義する
ここで、Pythonのtkinter+MySQLについて、添削を実現した文章を紹介します。これに関連して、tkinter MySQLの添削内容は以前の文章を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。
# -*- coding: utf-8 -*-
import tkinter
from tkinter import ttk
import pymysql
#
import tkinter.messagebox
#
root = tkinter.Tk()
root.title(' ')
#
root.minsize(500,500)
tabControl = ttk.Notebook(root)
tab1 = ttk.Frame(tabControl) # Create a tab
tabControl.add(tab1, text=' ') # Add the tab
tab2 = ttk.Frame(tabControl) # Add a second tab
tabControl.add(tab2, text=' ') # Make second tab visible
tab3 = ttk.Frame(tabControl) # Add a third tab
tabControl.add(tab3, text=' ') # Make second tab visible
tabControl.pack(expand=1, fill="both")
二、定義関数1.添削の関数を定義する
'''main3 '''
def select3(root, label,tree):
sname = label.get()
print('input: ',sname)
# 1. , Connection Cursor
con = pymysql.connect(host='192.168.0.46', user='root', password='root', database='test', charset='utf8', use_unicode=True)
cursor=con.cursor()
print("select * from where ` ( )` like '"+sname+"'")
c = cursor.execute("select * from where ` ( )` like '"+sname+"'")
# 2. list_re
list_re=cursor.fetchall()
print('result: ', list_re)
if len(list_re) <= 0:
tkinter.messagebox.showinfo(' ',sname+' !')
else:
print('result_name: ', list_re[0][0])
#
# 3. tree
for i in range(len(list_re)):
tree.insert('', i, text=i ,values=(list_re[i][0], list_re[i][2],list_re[i][4], list_re[i][14],\
list_re[i][5], list_re[i][9],list_re[i][11], list_re[i][12],\
list_re[i][13]))
tree.grid(column=0,row=1,sticky='NSEW')
con.close()
def insert(root, label1,label2,label3,label4,label5,label6,label7,label8,label9):
net_name = label1.get()
area_name = label2.get()
base_name = label3.get()
belong_name = label4.get()
base_local = label5.get()
base_level = label6.get()
base_num = label7.get()
rural = label8.get()
scene = label9.get()
print('input: ',net_name)
# , Connection Cursor
con = pymysql.connect(host='192.168.0.46', user='root', password='root', database='test', charset='utf8', use_unicode=True)
cursor=con.cursor()
# SQL
sql = "INSERT INTO (` `,\
` `,` `,` `,` `,\
` `,` ( )`,` `,` `)\
VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s')" % \
(net_name,area_name,base_name,belong_name,base_local,base_level,base_num,rural,scene)
print(sql)
try:
# sql
cursor.execute(sql)
# sql
con.commit()
tkinter.messagebox.showinfo(' ',net_name+' !')
except:
#
con.rollback()
con.close()
def delete(root,label7):
base_num = label7.get()
print('input: ',base_num)
# , Connection Cursor
con = pymysql.connect(host='192.168.0.46', user='root', password='root', database='test', charset='utf8', use_unicode=True)
cursor=con.cursor()
# SQL
sql = "DELETE FROM WHERE ` ( )`='%s'" %(base_num)
print(sql)
try:
# sql
cursor.execute(sql)
# sql
con.commit()
tkinter.messagebox.showinfo(' ',base_num+' !')
except:
#
con.rollback()
con.close()
2.主調用関数の定義
def main3():
monty3 = ttk.LabelFrame(tab3, text=' 3')
monty3.grid(column=0, row=0,sticky='W', padx=8, pady=4)
monty3_1 = ttk.LabelFrame(tab3, text=' 2')
monty3_1.grid(column=0, row=1,sticky='W', padx=4, pady=4)
#
tree=ttk.Treeview(monty3_1)#
tree["columns"]=(" "," "," "," "," ",\
" "," ( )"," "," ")
tree.column(" ",width=50) # ,
tree.column(" ",width=50)
tree.column(" ",width=50)
tree.column(" ",width=50) # ,
tree.column(" ",width=50)
tree.column(" ",width=50)
tree.column(" ( )",width=50) # ,
tree.column(" ",width=50)
tree.column(" ",width=50)
tree.heading(" ",text=" ") #
tree.heading(" ",text=" ")
tree.heading(" ",text=" ")
tree.heading(" ",text=" ") #
tree.heading(" ",text=" ")
tree.heading(" ",text=" ")
tree.heading(" ( )",text=" ( )") #
tree.heading(" ",text=" ")
tree.heading(" ",text=" ")
tree.grid(column=0,row=1,sticky='NSEW')
input_name1 = ttk.Label(monty3, text = ' :').grid(column=0, row=0, sticky='W',pady=5)
label1 = tkinter.StringVar()
entry1 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label1).grid(column=1, row=0, sticky='W')
input_name2 = ttk.Label(monty3, text = ' :').grid(column=3, row=0, sticky='W')
label2 = tkinter.StringVar()
entry2 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label2).grid(column=4, row=0, sticky='W')
input_name3 = ttk.Label(monty3, text = ' :').grid(column=0, row=1, sticky='W',pady=5)
label3 = tkinter.StringVar()
entry3 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label3).grid(column=1, row=1, sticky='W')
input_name4 = ttk.Label(monty3, text = ' :').grid(column=3, row=1, sticky='W')
label4 = tkinter.StringVar()
entry4 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label4).grid(column=4, row=1, sticky='W')
input_name5 = ttk.Label(monty3, text = ' :').grid(column=0, row=2, sticky='W',pady=5)
label5 = tkinter.StringVar()
entry5 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label5).grid(column=1, row=2, sticky='W')
input_name6 = ttk.Label(monty3, text = ' :').grid(column=0, row=3, sticky='W',pady=5)
label6 = tkinter.StringVar()
entry6 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label6).grid(column=1, row=3, sticky='W')
input_name7 = ttk.Label(monty3, text = ' ( ):').grid(column=0, row=4, sticky='W',pady=5)
label7 = tkinter.StringVar()
entry7 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label7).grid(column=1, row=4, sticky='W')
input_name8 = ttk.Label(monty3, text = ' :').grid(column=0, row=5, sticky='W',pady=5)
label8 = tkinter.StringVar()
entry8 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label8).grid(column=1, row=5, sticky='W')
input_name9 = ttk.Label(monty3, text = ' :').grid(column=0, row=6, sticky='W',pady=5)
label9 = tkinter.StringVar()
entry9 = tkinter.Entry(monty3,bg='#ffffff',width=20,textvariable=label9).grid(column=1, row=6, sticky='W')
select_button = tkinter.Button(monty3,bg='white',text=' ',width=10,height=1,\
command=lambda :select3(monty3, label7,tree)).grid(column=0, row=7, sticky='W',pady=5)
insert_button = tkinter.Button(monty3,bg='white',text=' ',width=10,height=1,\
command=lambda :insert(monty3,label1,label2,label3,label4,label5,label6,\
label7,label8,label9)).grid(column=1, row=7, sticky='W',padx=5,pady=5)
delete_button = tkinter.Button(monty3,bg='white',text=' ',width=10,height=1,\
command=lambda :delete(monty3, label7)).grid(column=2, row=7, sticky='W',pady=5)
効果は以下の通りですここで、Pythonのtkinter+MySQLについて、添削を実現した文章を紹介します。これに関連して、tkinter MySQLの添削内容は以前の文章を検索したり、下記の関連記事を見たりしてください。これからもよろしくお願いします。