pythonとTkinterでスクロールバーを使う方法
2020/01/26追記:プログラミング初心者に向けたpythonの勉強法と手順を記事にしました。
■はじめに
前回、リストボックスの作り方・使い方を紹介しました。
左の画面が初期画面で右の画面がスクロールした後の画面になりますが、スクロールバーがないので非常に分かりづらいですね。
そこで今回はスクロールバーを設定する方法を紹介します。
■コード
忙しい方やpythonのコードを自力で読んで理解できる方向けに、先にコードを載せます。動作環境はAnaconda(python3.7)です。
このコードを実行すると以下のようにスクロールバーが右側に表示されます。
スクロールするとバーが動くので非常に分かりやすいですね。
■説明
スクロールバーの作り方
まず次のようにスクロールバーを作ります。カッコ内はどこに作るかを指定しています。今回は上部(リストボックスのあるフレーム内)に作りたかったのでframeとしています。
次に、スクロールバーの位置を決めます。今回は右側に上下一杯に作りたかったので次のようにside=tk.RIGHT,fill="y"と書いています。
次にリストボックスのカッコ内にyscrollcommand=scroll.setを追加してあげます。これでリストボックスを動かすとスクロールバーが動くようになります。ただ気を付けて欲しいのはこのままでは、リストボックスを動かすとスクロールバーが動くけど、スクロールバーを動かしてもリストボックスは動かないということです。
そこでスクロールバーを動かしたらリストボックスも動くように設定する必要があります。それが次になります。
これで両者の動きがリンクするようになりました。
これで終了になります、私はscroll["command"]=listbox.yviewを忘れてしまうことが多いので皆さんも気を付けてください。
■自分が使ってるお得情報の紹介
私はAmazon kindle unlimitedというサービスを1年以上利用しています。
これは月額980円で 和書12万冊以上の電子書籍を読めるサービスです。
ビジネス本、雑誌、漫画、技術本など様々な本を読むことができます。10冊まで端末にダウンロードできるのでネット環境がなくても(オフラインでも)見れます。
なおkindle unlimitedは最初の30日間無料のため、気軽に登録してみて、あまり読みたい本が無ければすぐに解約しても問題ありません。
それか30日内に気になる本を全て読破すれば実質タダです。
ぜひ気になった方はチェックしてみて下さい。
なおkindleにない本等を買う時はamazonギフト券(amazonで使えるポイント)を買い、ポイントで数冊まとめて買った方がお得です。
ギフト券(ポイント)は買ったら10年も有効で、ポイントが付きます。さらに本をまとめ買い(2冊以上同時に)買うと、ポイントがもらえます。
(https://www.amazon.co.jp/b?ie=UTF8&node=5431437051)
学生さんであればkindle unlimitedよりも年2450円(月210円程度)で映画見放題、音楽聞き放題、本読み放題の「prime student」がおすすめです。
以下に私がkindle unlimitedで読んだ本を載せておきます。
■雑誌系
Tarzan(ターザン) 2020年1月23日号 No.779 [内臓脂肪 皮下脂肪すっきり落とす!] [雑誌]
- 作者:
- 出版社/メーカー: マガジンハウス
- 発売日: 2020/01/04
- メディア: Kindle版
■最後に
今回はスクロールバーを紹介しました。スクロールバーはテキストなどにも使えます。個人的にはリストボックスもテキストもあまり使わないのでスクロールバーを使う機会は少ないですが、便利な機能ではあるのでいざという時はぜひ参考にしてみて下さい。