Clean Architecture, Clean Life

仕事・個人での技術的なことつぶやきます

【Python】kivyとtkinterの簡易比較

はじめに

個人開発でWindowsGUIアプリを作ってるのですが、その際にGUIライブラリであるkivyとtkinterをそれぞれ使ってみたのでお互いのメリデメをメモ程度に書いておこうと思います

一般的な内容は他のサイトに結構上がっているので、少し細かいところや使用感のところメインで書きたいと思います

UI配置に癖があるのは、全GUIライブラリ共通なので割愛しています

kivy

メリット

デメリット

  • kv言語を新たに覚える必要があり、結構癖がある
  • 日本語の情報が少ない(そもそも情報自体が少ない)
  • 最近更新されていない
  • exe化できなかった(頑張ればできるかもしれない)
  • 日本語でテキスト入力させたい時に使いづらい

そもそも日本語入力自体がろくにできませんでした 解決策を開発していただいた方もいますが、候補が表示されなかったりとやっぱりまだ癖があると言った所感です

vucavucalife.com

私としてはここがすごく高いハードルで、結局後述のtkinterに乗り換えました

tkinter

メリット

  • UIがシンプル
  • 動作が軽い
  • サンプルが多い(日本語もある)
  • 外部ライブラリ不要

デメリット

  • スクロールする画面を作るときに癖がある

最後のデメリットさえなければほぼ完璧でした

なので、スクロール画面を使わないことで対策としました

まとめ

現状PythonGUIとしては事例の数や情報量、日本語の対応というところから見てもtkinterが第一候補かなと言ったところです

kivyもかっこいいので使ってみたい気持ちはあるのですが、いかんせん癖が強いですね(^_^;)

他にもPyQtなどいろいろなGUIライブラリがあるので、使ったことのある方は是非感想聞かせて下さい

今回も最後まで見ていただきありがとうございました