🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2243閲覧

python treeview 初心者 スクロールバー

ekTJ

総合スコア109

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/12/16 00:05

下記のようなGUIを作成途中なのですが、スクロールバーの設置についての記事をなかなか見つけられず苦戦しております。
treeviewの右側に設置したいのですが、どのようにすれば良いのでしょうか。

fremaを作成したりしてみたのですが、表示が上手くいかなかったり。。。
宜しくお願いします。

python

1 2import tkinter as tk 3from tkinter.scrolledtext import ScrolledText 4import tkinter.ttk as ttk 5import tkinter.messagebox as msg 6 7#画面表示 8root = tk.Tk() 9root.geometry('1300x800+250+100') 10root.title('入力画面') 11root.minsize(width=1300, height=800) 12 13#配布先FLBX 14lbl1 = tk.Label(text='配布先FLBX',relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 15lbl1.place(x=10, y=18) 16txt1 = tk.Entry(width=10) 17txt1.place(x=105, y=20) 18 19#商品コード 20lbl2 = tk.Label(text='商品コード',relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 21lbl2.place(x=10, y=50) 22txt2 = tk.Entry(width=30) 23txt2.place(x=105, y=52) 24lbl2_1 = tk.Label(text='10桁入力(品番/CL/SZ)',font=(u'MS ゴシック', 9, 'bold')) 25lbl2_1.place(x=290, y=55) 26 27#登録内容 28lbl3 = tk.Label(text='登録内容',font=(u'MS ゴシック', 11, 'bold')) 29lbl3.place(x=15, y=92) 30 31#商品名 32lbl4 = tk.Label(text='商品名',relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 33lbl4.place(x=105, y=92) 34txt4 = tk.Text(root, font=(u'MS ゴシック', 11, 'bold'),width=23,height=2)#字数制限、要確認!! 35txt4.place(x=165, y=94) 36#txt4.configure(state='disabled') 37 38#出力枚数 39lbl5 = tk.Label(text='出力枚数',relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 40lbl5.place(x=380, y=90) 41txt5 = tk.Entry(width=20) 42txt5.place(x=380, y=110) 43txt5.insert(tk.END,1) 44 45#商品情報 46lbl6 = tk.Label(text='小売価格 '+ " 0,000",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 47lbl6.place(x=540, y=90) 48 49lbl7 = tk.Label(text='本体価格 '+ " 0,000",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 50lbl7.place(x=540, y=110) 51 52lbl8 = tk.Label(text='卸価格 '+ " 0,000",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 53lbl8.place(x=774, y=90) 54 55lbl9 = tk.Label(text='卸本体価格 '+ " 0,000",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 56lbl9.place(x=740, y=110) 57 58lbl10 = tk.Label(text='消費税率 '+ " 10%",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 59lbl10.place(x=954, y=90) 60 61lbl11 = tk.Label(text='入数表示 '+ " (@×,××)",relief="ridge",font=(u'MS ゴシック', 11, 'bold')) 62lbl11.place(x=954, y=110) 63 64#登録ボタン 65btn = tk.Button(root, text='登録',width=8, font=("Menlo",11), bg="yellow2",command=btn_click) 66btn.place(x=1170, y=105) 67 68#商品コード 69lbl12 = tk.Label(text='商品コード',font=(u'MS ゴシック', 11, 'bold')) 70lbl12.place(x=10, y=160) 71 72#treeview 73tree = ttk.Treeview(root) 74tree.place(x=50,y=190) 75tree["columns"] = (1,2,3,4,5,6,7,8,9) 76tree["show"] = "headings" 77 78tree.column(1,width=180) 79tree.column(2,width=200) 80tree.column(3,width=60) 81tree.column(4,width=140) 82tree.column(5,width=140) 83tree.column(6,width=140) 84tree.column(7,width=140) 85tree.column(8,width=60) 86tree.column(9,width=140) 87 88tree.heading(1,text="商品コード") 89tree.heading(2,text="商品名") 90tree.heading(3,text="出力枚数") 91tree.heading(4,text="小売価格") 92tree.heading(5,text="本体価格") 93tree.heading(6,text="卸価格") 94tree.heading(7,text="卸本体価格") 95tree.heading(8,text="消費税率") 96tree.heading(9,text="入数表示") 97 98 99#表示保持 100root.mainloop()

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

このようにして解決出来ました

python

1frame = tk.Frame() 2frame.place(x=50,y=190) 3 4tree = ttk.Treeview(frame) 5tree.grid(row=0, column=0) 6tree["columns"] = (1,2,3,4,5,6,7,8,9) 7tree["show"] = "headings" 8 9tree.column(1,width=180) 10tree.column(2,width=200) 11tree.column(3,width=60) 12tree.column(4,width=140) 13tree.column(5,width=140) 14tree.column(6,width=140) 15tree.column(7,width=140) 16tree.column(8,width=60) 17tree.column(9,width=140) 18 19tree.heading(1,text="商品コード") 20tree.heading(2,text="商品名") 21tree.heading(3,text="出力枚数") 22tree.heading(4,text="小売価格") 23tree.heading(5,text="本体価格") 24tree.heading(6,text="卸価格") 25tree.heading(7,text="卸本体価格") 26tree.heading(8,text="消費税率") 27tree.heading(9,text="入数表示") 28 29ysb = tk.Scrollbar(frame, orient=tk.VERTICAL, width=16, command=tree.yview) 30tree.configure(yscrollcommand=ysb.set) 31ysb.grid(row=0, column=1, sticky='news') 32

投稿2020/12/16 00:35

ekTJ

総合スコア109

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問