『tkinterでform作成』
tkinterでユーザフォームを作成します。
長いコードになります。
- # -*- coding: utf-8 -*-
- import tkinter as tk
- import tkinter.ttk as ttk
- import sqlite3
- import tkinter.messagebox as msg
- root = tk.Tk()
- root.resizable(0,0)
- root.title(“基本情報入力”)
- root.geometry(“640×640”)
- status = tk.Label(root, text=“from : zono屋・・・ ”,borderwidth=2,relief=“ridge”)
- status.pack(side=tk.BOTTOM, fill=tk.X)
- # 1th < scrollbar >
- frame1 = tk.LabelFrame(root,bd=1,relief=“sunken”,text=” name “,height=600,foreground=“purple”)
- frame1.pack(side=“left”,anchor=“nw”,fill=“x”,padx=8,pady=2)
- scrollbar = tk.Scrollbar(frame1,bd=5,relief=“sunken”)
- scrollbar.pack(side=“right”,fill=“y”)
- # 2th ” menu ” < 利用者ID >
- frame2 = tk.LabelFrame(root,bd=1,relief=“sunken”,text=” manu “,width=600,height=100,foreground=“purple”)
- frame2.pack(side=“top”,anchor=“n”,fill=“x”,ipady=5,padx=2)
- label1 = tk.Label(frame2,text=“利用者 ID”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label1.grid(row=1,column=1,padx=2,pady=2)
- entry1 = tk.Entry(frame2,text=“”,width=15,bg=“light grey”)
- entry1.grid(row=1,column=2,padx=2,ipady=5)
- # 3th ” start date of use ” < 西暦年 > < 月 > < 日 >
- frame3 = tk.LabelFrame(root,bd=1,relief=“sunken”,text=” start date of use “,width=600,height=100,foreground=“purple”)
- frame3.pack(side=“top”,fill=“x”,pady=5,padx=2)
- label9 = tk.Label(frame3,text=“確認表示欄”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label9.grid(row=2,column=1,padx=2,pady=5)
- entry18= tk.Entry(frame3,text=“”,width=10,bg=“light grey”)
- entry18.grid(row=2,column=2,padx=2,ipady=5)
- label18= tk.Label(frame3,text=“年”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label18.grid(row=2,column=3,padx=2,pady=5)
- entry19= tk.Entry(frame3,text=“”,width=10,bg=“light grey”)
- entry19.grid(row=2,column=4,padx=2,ipady=5)
- label19= tk.Label(frame3,text=“月”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label19.grid(row=2,column=5,padx=2,pady=5)
- entry20= tk.Entry(frame3,text=“”,width=10,bg=“light grey”)
- entry20.grid(row=2,column=6,padx=2,ipady=5)
- label20= tk.Label(frame3,text=“日”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label20.grid(row=2,column=7,padx=2,pady=5)
- label10 = tk.Label(frame3,text=“利用開始日”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label10.grid(row=1,column=1,ipadx=10,pady=5)
- val = tk.StringVar()
- box2 = ttk.Combobox(frame3, values = (” “,“2015”,“2016”,“2017”,“2018”,“2019”,“2020”,“2021”), textvariable=val, state=‘readonly’,width=7,height=2)
- box2.current(0)
- box2.grid(row=1,column=2,padx=2,ipady=5)
- label12= tk.Label(frame3,text=“年”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label12.grid(row=1,column=3,padx=2,pady=5)
- val = tk.StringVar()
- box3 = ttk.Combobox(frame3, values = (” “,“01”,“02”,“03”,“04”,“05”,“06”,“07”,“08”,“09”,“10”,“11”,“12”), textvariable=val, state=‘readonly’,width=7,height=2)
- box3.current(0)
- box3.grid(row=1,column=4,padx=2,ipady=5)
- label14= tk.Label(frame3,text=“月”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label14.grid(row=1,column=5,padx=2,pady=5)
- val = tk.StringVar()
- box4 = ttk.Combobox(frame3, values = (” “,“01”,“02”,“03”,“04”,“05”,“06”,“07”,“08”,“09”,“10”,“11”,“12”,“13”,“14”,“15”,“16”,“17”,“18”,“19”,“20”,“21”,“22”,“23”,“24”,“25”,“26”,“27”,“28”,“29”,“30”,“31”), textvariable=val, state=‘readonly’,width=7,height=2)
- box4.current(0)
- box4.grid(row=1,column=6,padx=2,ipady=5)
- label16= tk.Label(frame3,text=“日”,width=7,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label16.grid(row=1,column=7,padx=2,pady=5)
- # 4th “name Confirm input” < 姓 > < 名 > < セ イ > < メ イ >
- frame4 = tk.LabelFrame(root,bd=1,relief=“sunken”,text=” name Confirm input “,width=600,height=200,foreground=“purple”)
- frame4.pack(side=“top”,fill=“x”,pady=5,padx=2)
- label3 = tk.Label(frame4,text=” 姓 (*)”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label3.grid(row=2,column=1,padx=2,pady=5)
- entry2 = tk.Entry(frame4,width=15,text=“”)
- entry2.grid(row=2,column=2,padx=2,ipady=5)
- label4 = tk.Label(frame4,text=” 名 (*)”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label4.grid(row=2,column=3,padx=2,pady=5)
- entry3 = tk.Entry(frame4,text=“”,width=15)
- entry3.grid(row=2,column=4,padx=2,ipady=5)
- label5 = tk.Label(frame4,text=” セイ (*)”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label5.grid(row=3,column=1,padx=2,pady=5)
- entry4 = tk.Entry(frame4,text=“”,width=15)
- entry4.grid(row=3,column=2,padx=2,ipady=5)
- label6 = tk.Label(frame4,text=” メイ (*)”,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label6.grid(row=3,column=3,padx=2,pady=5)
- entry5 = tk.Entry(frame4,text=“”,width=15)
- entry5.grid(row=3,column=4,padx=2,ipady=5)
- # 5th ” other ” < 市町村名 > < 支給量 > < 工賃単価 >
- frame5 = tk.LabelFrame(root,bd=1,relief=“sunken”,text=” other “,width=600,height=100,foreground=“purple”)
- frame5.pack(side=“top”,fill=“x”,pady=5,padx=2)
- label17 = tk.Label(frame5,text=” 市町村名 “,width=10,height=2,bd=1,relief=“sunken”,bg=“ghost white”)
- label17.grid(row=1,column=1,padx=2,pady=5)
- val = tk.StringVar()
- box1 = ttk.Combobox(frame5,values = (” “,“鹿児島市”,“熊本市,”八代市“,”さつま川内市“,”水俣市“), textvariable=val, state=’readonly’,width=12,height=2)
- box1.current(0)
- box1.grid(row=1,column=2,padx=5,ipady=5)
- label17 = tk.Label(frame5,text=”確認表示欄 “,width=10,height=2,bd=1,relief=”sunken“,bg=”ghost white“)
- label17.grid(row=1,column=3,padx=2,pady=5)
- entry14 = tk.Entry(frame5,text=””,width=15,bg=”light grey“)
- entry14.grid(row=1,column=4,padx=2,ipady=5)
- label17 = tk.Label(frame5,text=” 支給量 “,width=10,height=2,bd=1,relief=”sunken“,bg=”ghost white“)
- label17.grid(row=2,column=1,padx=2,pady=5)
- entry8 = tk.Entry(frame5,text=””,width=15)
- entry8.grid(row=2,column=2,padx=2,ipady=5)
- label17 = tk.Label(frame5,text=” 工賃単価 “,width=10,height=2,bd=1,relief=”sunken“,bg=”ghost white“)
- label17.grid(row=3,column=1,padx=2,pady=5)
- entry9 = tk.Entry(frame5,text=””,width=15)
- entry9.grid(row=3,column=2,padx=2,ipady=5)
- # 6th “<追加>・<更新>“
- frame7 = tk.LabelFrame(root,bd=1,relief=”sunken“,text=” edit “,width=600,height=100,foreground=”purple“)
- frame7.pack(side=”top“,fill=”x“,pady=5,padx=5)
- button2 = tk.Button(frame7,text=”追 加“,width=10,height=2,bg=”lightgray“)
- button2.pack(side=”left“,padx=2,pady=5)
- button3 = tk.Button(frame7,text=”更 新“,width=10,height=2,bg=”lightgray“)
- button3.pack(side=”left“,padx=2,pady=5)
- # 7th “<listbox>“
- mylist = tk.Listbox(frame1,yscrollcommand = scrollbar.set,height=600)
- mylist.insert(0) # リストボックス内の項目をクリックする #
- mylist.pack(side=”left“,fill=”both“)
- scrollbar.config(command = mylist.yview)
- # 8th “ end ” 【終 了】
- frame8 = tk.LabelFrame(root,bd=1,relief=”sunken“,text=” end “,width=600,height=100,foreground=”purple“)
- frame8.pack(side=”top“,fill=”x“,pady=5,padx=5)
- label18 = tk.Label(frame8,text=” 項目 (*) は 必須 !“,width=20,height=2,bd=1)
- label18.pack(side=”left“,padx=5,pady=5)
- button4 = tk.Button(frame8,text=”終 了“,width=10,height=2,bg=”lightgray“)
- button4.pack(side=”right“,padx=5,pady=5)
- root.mainloop()
出来上がりは