Python3 でキャンバスを使って絵を描きました。
この絵を上下・左右のスクロールバーを使って移動したいと思いました。
調べてみたところ、リストに対するスクロールバーの説明はあったのですが、キャンバスに対するスクロールバーの説明があまり見つかりませんでした。
いくつかのサイトを参考にプログラムしてみたのですが、以下のような問題が起こりました。
・スクロールバー上でのみスクロールできる
・スクロールバー以外のところではスクロールできない
・スクロールバー上でスクロールしても、スクロールバーが動かない
・スクロールバー上でスクロールするときと、スクロールバーをつかんでドラッグするときとで、関数の引数の数が異なるためエラーが出る
以上にようなエラーのないプログラムにしたいと思います。
プログラムは以下の通りです。
python
1from tkinter import * 2 3def function1(a,b,c): 4 pass 5 6def function2(a,b,c): 7 pass 8 9root = Tk() 10canvas = Canvas(root, width = 400, height = 400, scrollregion = (0, 0, 800, 800)) 11xscroll = Scrollbar(root, orient = HORIZONTAL, command = function1) 12xscroll.grid(row = 1, column = 0, sticky = E+W) 13yscroll = Scrollbar(root, orient = VERTICAL, command = function2) 14yscroll.grid(row = 0, column = 1, sticky = N+S) 15canvas.config(xscrollcommand = xscroll.set, yscrollcommand = yscroll.set) 16root.grid_rowconfigure(0, weight = 1) 17root.grid_columnconfigure(0, weight = 1) 18canvas.grid(row = 0, column = 0, sticky = N+E+W+S) 19root.mainloop()
どなたかわかる方がいらっしゃいましたらお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/06 02:44