マガジンのカバー画像

Pythonで作るGUI付きデスクトップアプリ講座

32
PySimpleGUIを使って、誰もが簡単にPythonでデスクトップアプリを開発出来る様に解釈していきます。これからデスクトップアプリを作るならPython+PySimpleG…
運営しているクリエイター

記事一覧

Python+PySimpleGUIで作るGUIアプリ入門 Part23-入力制限の追加-

Python+PySimpleGUIで作るGUIアプリ入門 Part23-入力制限の追加-

入力制限の追加テキストエリアなどに入力制限をかけたい場合が出てきます。例えば、氏名のふりがななどを入力してもらう場合です。この場合は、ひらがなのみもしくはカタカタのみに入力制限をかけたくなります。PySimpleGUIのCook bookには数字のみ(郵便番号等)の例がありますが、ひらがなの場合がありませんでしたので、今回はひらがな入力制限を追加していきます。

図23-1に示すGUIを作成します

もっとみる
Python+PySimpleGUIで作るGUIアプリ入門 Part22-カレンダーからの入力-

Python+PySimpleGUIで作るGUIアプリ入門 Part22-カレンダーからの入力-

カレンダーからの入力日付を入力する際は、カレンダーから入力出来るようにすると便利です。PySimpleGUIでもカレンダー入力に対応しています。sg.CalendarButton (‘Date‘,target(‘カレンダー入力を反映したいウィジェットのキー‘))として設定する事が出来ます。カレンダー入力を反映したいウィジェットですが、今回はInputTextに反映させることにします。

新サイトへ

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part8:初期設定とGUIイベント処理の実装

Pythonで作るGUI付き翻訳支援アプリの作成 Part8:初期設定とGUIイベント処理の実装

初期設定とGUIイベント処理の実装deepl.pyとconfig.initが作成出来ましたので、main.pyに戻りプログラムの初期設定とGUIイベント処理を実装していきます。

プログラムの初期設定

main.pyに初期設定を実装していきます。プログラムの初期設定は以下の3つです。

設定ファイルの読み込み

最初に表示するウィンドウの指定

deepLの使用量をウィンドウに反映

コードは以

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part7:deepl.pyとconfig.pyの作成

Pythonで作るGUI付き翻訳支援アプリの作成 Part7:deepl.pyとconfig.pyの作成

config.pyの作成DeepL API Freeの利用登録が完了しました。API認証キーは、config.iniという設定ファイルに保存するようにしましょう。Pythonで設定ファイルを管理するconfigparserというモジュールを使って、config.iniファイルから必要な設定を読み書きするようにします。また、PySimple GUIで作成したDeepL設定画面からAPI認証キーの登録

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part6:DeepL API Freeの利用登録

Pythonで作るGUI付き翻訳支援アプリの作成 Part6:DeepL API Freeの利用登録

DeepL API Freeの登録DeepLは、ブラウザベースの翻訳ツール(5000文字/回の制限あり)に加えてWeb APIを提供しています。APIには有料プランと無料プランがありますが、今回は無料プランであるDeepL API Free(500000万文字/月まで無料)への登録方法を説明いたします。

アカウント登録

ブラウザでdeepl.comにアクセスいただき、タイトルバーのAPIをクリ

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part5:GUIレイアウトの作成2

Pythonで作るGUI付き翻訳支援アプリの作成 Part5:GUIレイアウトの作成2

gui.pyの作成の続きDeepL設定画面のレイアウト作成

DeepL設定画面であるconfig_window(config_deepl)は、メイン画面に比べて非常にシンプルになります。図.DeepL設定画面のレイアウト説明を参照下さい。れぞれの番号とコード内の行番号を今回も一致させています。

1行目はテキストを表示させているだけですので説明は割愛します。
2行目は、DeepLのAPIキー入力

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part4:GUIレイアウトの作成1

Pythonで作るGUI付き翻訳支援アプリの作成 Part4:GUIレイアウトの作成1

gui.pyの作成gui.pyには、GUIレイアウトをコーディングしていきます。図1で示すように、作成する画面は2つでそれぞれmain_window()とconfig_window()とします。また、メイン画面は縦に2分割しますので、それぞれleft_col=[]とright=[]として作成します。

gui.pyの骨子は、以下の通りとなります。main_window()関数が呼び出された時に、戻

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成-Part3:main.pyの作成-

Pythonで作るGUI付き翻訳支援アプリの作成-Part3:main.pyの作成-

main.pyの作成main.pyには、アプリのエントリーポイントとしての役割とイベント処理をコーディングしていきます。main.pyに実装させたい機能は、主に3つです。

設定ファイル(config.ini)の読み込み

最初に表示するウィンドウの読み込み

各種イベント処理の実装

main.pyの設計

それでは、main.pyの設計に移ります。設計というと難しいですが、プログラムのおおまか

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part2 レイアウトとディレクトリ構成

Pythonで作るGUI付き翻訳支援アプリの作成 Part2 レイアウトとディレクトリ構成

アプリのレイアウト今回開発するアプリのレイアウトを検討します。図1で示すように、今回はメイン画面とDeepL設計画面の2つのウィンドウを作成します。それぞれの画面を行き来出来るようにし、どちらか一つの画面しか表示されないようにしていきます。

メイン画面の検討

メイン画面には、①翻訳したい原文を入力するためのMultilineウィジェットを設定します。②と③もMultilineウィジェットですが

もっとみる
Pythonで作るGUI付き翻訳支援アプリの作成 Part1 アプリの概要

Pythonで作るGUI付き翻訳支援アプリの作成 Part1 アプリの概要

これまでは、PySimpleGUIを使ったGUI付アプリの基本的な作成方法を紹介してきました。GUIのレイアウト作成は、出来るようになったけれども実際にどのように使えば良いかのイメージが湧かない方もいると思いますので、これまで紹介してきた内容に加えてDeepL APIを実際に組み合わせて翻訳支援アプリの作成方法を紹介していきたいと思います。

アプリの完成イメージを図1-1、1-2に示します。

もっとみる
Pythonで作るGUIアプリ入門 Part21 -トグルボタンの設定-

Pythonで作るGUIアプリ入門 Part21 -トグルボタンの設定-

トグルボタンの設定トグルボタンとは、1つのボタンでO N/OFF(有効/無効)といった状態切り替えを行うボタンです。スマートフォンなどでは、WiFiやBluetoothのO N/OFF設定などで使われています。

ウィンドウ中央に設定したトグルボタンをクリックする事で図21-1、図21-2のようにON/OFFを切り替えるGUIアプリを作成して、トグルボタンの設定を解説していきます。

コードは以下

もっとみる
Pythonで作るGUIアプリ入門 Part20 -ボタン画像の設定-

Pythonで作るGUIアプリ入門 Part20 -ボタン画像の設定-

ボタン画像の設定ボタンには画像を設定する事も出来ます。指定出来る画像形式は、JPGとPNGのみとなります。sg.Button(image_filename=’画像のパス’)として設定する事が出来ます。

図20-1のような再生ボタンを設置したGUIウィンドウを作成します。再生ボタンを押すと図20-2のようなポップアップが表示されるようにします。

コードは、以下の通りとなります。

import

もっとみる
Pythonで作るGUIアプリ入門 Part1 -Popupの表示-

Pythonで作るGUIアプリ入門 Part1 -Popupの表示-

Pythonをいざ実務に活かそうと思った時に、GUI付きのアプリが作成出来たらなと思ったことはありませんか?
PythonでもGUI付きデスクトップアプリをとても簡単に作成する事ができます。必要な準備は、PysimpleGUIのインストールだけになります。pip もしくはconda でインストールします。

どれほど簡単かを取り敢えず、以下のコードで試してみましょう。

import PySimp

もっとみる
Pythonで作るGUIアプリ 番外編

Pythonで作るGUIアプリ 番外編

今回は、番外編としてGUI付きデスクトップアプリの応用例を紹介いたします。先日、少し時間が取れたため世界一高精度な翻訳ツールであるDeepLを使ってKindle電子書籍の翻訳(英語→日本語)のアプリをPySimpleGUIを使って作成してみました。

きっかけは、英語の技術書をKindleで読んでいたところぬるっぽ様が開発された翻訳支援ツールPCOTを知りDeepL翻訳と連携されたアプリで非常に面

もっとみる