2022-07-26

スライダー (Slider) 〜 Kivy

Kivy は、NUI (Natural User Interface) を持つモバイルアプリやその他のマルチタッチアプリケーションソフトウェアを開発するためのフリーでオープンソースの Python フレームワークです。MIT ライセンスのもとで配布され、Android, iOS, Linux, macOS そして Windows で動作させることができます。

Wikipedia より引用、翻訳、編集

使ったことのなかった Python の GUI ライブラリ(フレームワーク)、Kivy に興味を持ったので [1]、ひととおりウィジェットのサンプルを作ってみようとしています。サンプルを作っていくにあたって、どんなスタイルでコーディングするか、テンプレートみたいなものを固めていこうとあれこれ試し始めました。

今回はスライダーのサンプルを紹介します。

Python のコードのみのサンプルと、UI 部分を分離して Kv 言語で記述した同じ動作をするサンプルを併せて紹介しています。

下記の環境で動作確認をしています。

Fedora Linux 36 x86_64
python3 3.10.5-2.fc36.x86_64
Kivy 2.1.0

Slider (Python)

スライダーは、スクロールバーのようなウィジェットです。水平方向と垂直方向の配置、最小値/最大値、デフォルト値の設定をサポートしています。

kivy_slider.py
kivy_slider.py の実行例
kivy_slider.py の実行例
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [Base        ] Start application main loop
[INFO   ] [GL          ] NPOT texture support is available
スライダーの値は 0.00 です。
スライダーの値は 38.00 です。
スライダーの値は 38.00 です。
スライダーの値は 38.00 です。
スライダーの値は 38.00 です。
スライダーの値は 39.00 です。
スライダーの値は 39.00 です。
スライダーの値は 40.00 です。
スライダーの値は 40.00 です。
スライダーの値は 41.00 です。
スライダーの値は 41.00 です。
スライダーの値は 42.00 です。
スライダーの値は 42.00 です。
スライダーの値は 43.00 です。
スライダーの値は 43.00 です。

Slider (Python + Kv)

指定したファイルを読み込むようにしたかったので、ここでは Builder.load_file() を使って、指定したファイルを読み込むようにしています。

kivy_slider_1.py
kivy_slider_1.kv
kivy_slider_1.py の実行例

今回は、Python のみで記述した場合と、UI の部分を Kivy 言語で記述した場合で、動作は同じものの、ラベルに現在値を表示する部分の記述内容に違いが出てしまいました。経験が浅いせいで知らないことがあるのかもしれません。

参考サイト

  1. bitWalk's: Kivy をちょろっと使ってみた [2022-07-10]
  2. Kv language — Kivy 2.1.0 documentation
  3. Widgets — Kivy 2.1.0 documentation
  4. Slider — Kivy 2.1.0 documentation

 

 

ブログランキング・にほんブログ村へ bitWalk's - にほんブログ村 にほんブログ村 IT技術ブログ Linuxへ
にほんブログ村
このエントリーをはてなブックマークに追加

0 件のコメント: