見出し画像

Python で、デスクトップアプリの開発


①デスクトップアプリ開発とは?

デスクトップアプリケーションは、ユーザーがPCで直接操作するアプリケーションのことです。
Python では、以下のようなGUI(Graphical User Interface)ライブラリを使用して開発できます。

・Tkinter(標準ライブラリで簡単)
・PyQt / PySide(高度なデザインが可能)
・Kivy(マルチプラットフォーム対応)

今回は、Python 標準ライブラリである Tkinter を使って、簡単なアプリケーションを作成します。


Pythonでつくるデスクトップアプリ ↓


②必要な準備


❶Python のインストール

1. Python公式サイトから最新版のPythonをダウンロードし、インストールします。

2. インストール時に「PATHを追加する」オプションを必ず選択してください。


❷Tkinter の確認

Tkinter は通常、Python に標準で付属していますが、確認するには次のコマンドを実行してください。

python -m tkinter

ウィンドウが表示されれば、Tkinterが正しく動作しています。


Pythonでデスクトップアプリを作ろう ↓


③基本の Tkinter アプリケーション作成

以下は、「Hello, World!」を表示するシンプルなアプリケーションの例です。


❶基本コード

import tkinter as tk

# ウィンドウの作成
root = tk.Tk()
root.title("My First App")  # ウィンドウタイトル
root.geometry("300x200")   # ウィンドウサイズ

# ラベルの作成
label = tk.Label(root, text="Hello, World!")
label.pack(pady=20)

# メインループ
root.mainloop()

❷解説

1. tk.Tk()
アプリケーションのメインウィンドウを作成します。
2. root.title()
ウィンドウのタイトルを設定します。

3. root.geometry()
ウィンドウのサイズを設定します。(幅 x 高さ)

4. tk.Label()
テキストを表示するラベルを作成します。

5. label.pack()
ラベルを画面に配置します。

6. root.mainloop()
アプリケーションを起動し、ウィンドウを表示します。


Pythonではじめるデスクトップアプリ開発入門 ↓


④応用例【簡単な電卓アプリ】

次に、ボタンを使った簡単な電卓アプリを作ります。


❶コード例

import tkinter as tk

def calculate():
    try:
        result = eval(entry.get())  # 入力された式を計算
        label_result.config(text=f"結果: {result}")
    except Exception as e:
        label_result.config(text="エラー")

# ウィンドウの作成
root = tk.Tk()
root.title("簡単電卓")
root.geometry("300x200")

# 入力フィールド
entry = tk.Entry(root, width=20)
entry.pack(pady=10)

# 計算ボタン
button = tk.Button(root, text="計算", command=calculate)
button.pack(pady=5)

# 結果表示ラベル
label_result = tk.Label(root, text="結果:")
label_result.pack(pady=10)

# メインループ
root.mainloop()

❷ポイント

1. eval() の使用
eval() は文字列として入力された計算式を評価する関数です。
ただし、悪意のあるコードの実行リスクがあるため、実運用では入力の検証を追加してください。

2. イベント駆動型プログラミング
ボタンを押したときに calculate 関数を実行することで、イベント駆動型の動作を実現しています。


Python2年生 デスクトップアプリ開発のしくみ 体験してわかる!会話でまなべる! ↓


⑤開発時の注意点

1. レイアウト管理
pack()
簡単なウィジェット配置に使用

grid()
表形式で配置可能

place()
座標を指定して配置

レイアウトが複雑な場合は、grid() の使用をおすすめします。

2. コードの分離

アプリが複雑になる場合、以下のようにコードを分割して管理します。
GUI 部分とロジック部分を分ける。
クラスを使用して再利用性を高める。

3. エラーハンドリング
ユーザー入力に対するエラーチェックを忘れずに実装しましょう。


基礎の文法が終わったその次に/Python標準のTkinterを使って作成/CustomTkinterで少しおしゃれに/Web APIで天気情報を取得 はじめてつくるシリーズ (温泉マーク2000) ↓


⑥応用【ファイル選択ダイアログ付きアプリ】

ファイルを選択する機能を持つアプリを以下に示します。


❶コード例

import tkinter as tk
from tkinter import filedialog

def open_file():
    file_path = filedialog.askopenfilename()
    if file_path:
        label.config(text=f"選択されたファイル: {file_path}")

# ウィンドウ作成
root = tk.Tk()
root.title("ファイル選択アプリ")
root.geometry("400x150")

# ボタンとラベル
button = tk.Button(root, text="ファイルを開く", command=open_file)
button.pack(pady=10)

label = tk.Label(root, text="ファイルが選択されていません")
label.pack(pady=10)

# メインループ
root.mainloop()


Pythonのクロスプラットフォームデスクトップアプリ開発の裏技~PyQtとTkinterを駆使してマルチOS対応アプリケーションを作成する~ ↓


⑦まとめ

Pythonを使ったデスクトップアプリ開発は、初心者でも簡単に始められます。

ポイント
小さなプロジェクトから始め、慣れてきたら機能を追加していく。
Tkinter の基本をマスターしたら、PyQt や Kivy に挑戦してみる。


統計

さらに学ぶ際は、公式ドキュメントやサンプルコードを参考にしてください。

いいなと思ったら応援しよう!