Engineerの研鑽

メインはプログラミング系ブログ(本の要約とかもします)

質問はCONTACTやコメントでお願い致します。

【コピペでできるpython】GUIを作ってアプリ化してみよう!

f:id:yukiyukiponsu:20190526235753j:plain

 

こんにちは、ゆきぽんずです。

 

仕事楽しいですよね。エンジニアとしてバックエンドもさせてもらい、アプリ開発もさせてもらいと、本当に充実しています。フリーランスでは学べないことをたくさん教えてもらえるので辞めるのが惜しいですね。

 

雑用ばかりを与えられるようなら辞めたくもなりますが、責任のある仕事を振ってもらえる環境って最高ですよね。エンジニアではなく他の部署に行けって言われたら辞めますけど..

 

さてさて余談はここまでにして、以前pythonで作ったGUIに少し付け加えてアプリにしていきます。

www.yukiyukiponsu.work

作成するアプリ

作成したアプリの動作

 

さて、ではアプリを作る前に実装していきましょうか!ソースコードをどうぞ

ソースコード

GUIPython.py

#画面タイトル root.title(u"文字列")の部分でエラーが出ないようにする
# -*- coding: utf-8 -*-
import sys
import tkinter

#tkinterインスタンス生成
#python 3.xではtkinterだが、python 2.xではTkinterとのこと
#python 3.xでしか触れていないため正直python 2.xについてはわからん
root = tkinter.Tk()
# 画面サイズ
root.geometry('300x200')
#画面タイトル
root.title(u"pythonGUIテスト")
# ラベル
lbl = tkinter.Label(text='表示したいワード')
lbl.place(x=10, y=70)
# テキストボックス
txt = tkinter.Entry(width=20)
txt.place(x=100, y=70)

# ラベル
lbl_show_word = tkinter.Label(text='表示ワード')
lbl_show_word.place(x=10, y=120)
# テキストボックス
txt_show_word = tkinter.Entry(width=20)
txt_show_word.place(x=100, y=120)


def btn_click():
    # 表示ワードをクリア
    txt_show_word.delete(0, tkinter.END)
    # 表示したいワードを取得
    print(txt.get())
    # 表示ワードに文字をセット
    txt_show_word.insert(tkinter.END,txt.get())

# ボタン
btn = tkinter.Button(root, text='表示', command=btn_click)
# 場所を指定して表示
btn.place(x=250, y=65)
# 表示
root.mainloop()

 

以前作成したものとの大きな違いは、文字をクリア(delete)したり、文字を入れたり(insert)するところでしょうか(・_・D フムフム

 

こちらの記事が、deleteやinsertについて詳しく説明してくれています。(こんなもんかくらいの理解でも正直大丈夫なんですが)

Python】テキストボックス(Tkinter.Entry)の作成・クリア・取得・セット

 https://pg-chain.com/python-tkinter-entry

 

本題のアプリ化に入っていきます!アプリ化にはpyinstallerを使うぞい。

 

pyinstallerのインストール

pip install pyinstaller

アプリ化コマンド

pyinstaller --onefile --noconsole GUIPython.py

 

アプリ化が成功していると、コマンドプロンプトで以下のように出てきます。

 

 以上です..(´・ω`・)エッ?。そうなんです、これで終わりです。アプリを作るのに必要なのはたったの2行という技術の進歩

 

まさに!!!晴天の霹靂ーーーーーーーーーーーーーv( ̄Д ̄)v イエイ

 

補足すると

--onefile

.exeファイルを作成するときに一つのファイル(.exe一つだけ)にまとめる

(指定していなければ複数ファイル(.exe以外のファイルも存在)になる)

--noconsole

.exeファイルを実行した時にコマンドプロンプトを立ち上げないようにする。指定していなければコマンドプロンプトが勝手に起動してしまう

 

これくらい理解していただけると十分です

 

あれっ?.exeファイルがないぞと思った方、安心してください。ありますよ(○○明るい○○)!pyinstallerを実行すると勝手にフォルダが生成されています。この中のdistフォルダの中に.exeファイルがあります。

フォルダの位置

exe場所

この.exeファイルを実行するとアプリが起動します。あとは使ってみるだけなのわさ。

 

おおおーっとちょっと待った!これはあくまでwindowsで実行する場合の話です。macで実行する場合は.exeを開ける状態にしないと実行できません。

 

筆者はmacを所持していないので(*エンジニアです)試すことも出来ないのですが、こちらのサイトがmacで.exeファイルを開く方法を教えてくれています。macの方は参考にしてください。EXEファイルをMacで開く方法

 

 今日の内容は以上になります。

 

もうアプリを作るのが難しい時代は終わりました。初心者でもアプリを作れる時代になったのです。楽しんでこうぜ。

 

今日もブログを読んでくださりありがとうございます。

 

それではまた明日!