見出し画像

PYTHONウィンドウを作る

コードやプログラムをどう表現したら?


たくさんコードがあるけど、それをどう使うか?
一番最初の悩みと問題がこれでした。
サイトにあるものって素晴らしいものが多いのですが、実際に自分で運用するとなると「???」ってなるケースだったので、
まず骨組みから作っちゃえってと思いつきました。

【画面に表示させる】
まずここをなんとかすることが、自分のソフトを作る第一歩だと気づきました。
ゲームでも画面を表示させるテレビやモニターが必要!

ということで作っていきましょう。
pythonでかなりシンプルにした設計ですが、そのあといろいろ作ってみて自分なりに応用のきく物にしたつもりです。

ACT.1 PYTHONのライブラリ

たくさんあるのですが、画面用のライブラリはtkinterにしました。
なるべくシンプルで、なおかつ無料となると自分にはこれが一番でした。
ただ、pygameのライブラリを使った画面表示や有料のものもあるので、
興味のある方は一度使ってみるのが良いと思います

自分はせっかちなのでそこまでしませんでした。

ではさっそく


CMDと入力します



まだの方はCMDでpip install からtkinterをインストールしておいてください。すでにデフォルトで入ってる場合は、このステップは省いて大丈夫です。

ACT.2 コードを書いてみる


それでは実際にコードを書いてみましょう
とはいってもpythonでウィンドウを作る場合はそこまで複雑なものはありません。

もちろん質にこだわれば有料のライブラリだったり、もっと良いのだったりとなるのですが、

あたらしいウィンドウURL

これは実際に私が作ったアプリの一つですが、
これはtkinterで作ったので、このぐらいで十分ならtkinter一択で良いと思います。
なにより使いやすいのが私がおすすめする一番の理由であります

では始めましょう


まずはライブラリをインポート
このように書くだけでOKです


次はこのコードを書きます
これはウィドウの設定です
window.title = ウィンドウに表示させる名前です。好きなのでOKです
window.geometry = ウィンドウ全体のサイズです


ACT.3 ESCを押したときにアプリケーションが閉じるコード



ここでウィンドウ作成の基本に加えてひとつだけ機能を実装します。
どのアプリケーションでもESCを押せばシステム自体を閉じるという機能はあるのですが、コードで設定しないとデフォルトではできません。

def….は関数名です。好きなのをつけて構いませんが(event)は書いてください

window.bind("<Escape>", close_window)でESCを押したらウィンドウを閉じる、という機能を実装したことになります。

ACT.4 ループ設定をする


初めて知ったときは結構衝撃と言うかビビりました。
「ループでずっとウインドウを作動させる」
というコードを書かないと、実行させてもすぐ閉じてしまうのです。


このコードを書き込むとループがずっと続く状態になります。
つまり、ACT.3で書いたESCを押すまでずっとウィンドウは動いたままになっているという状態にすることができます。


ACT.5 全体のコード


最後に全体のコードを記しておきます。

今回はこれだけになりましたが、あとはこれに自分の実装したい機能のコードとライブラリをつけくわえるだけです。

自分が作りたいものに関しては、本を見たり、サイトで調べたりといろいろ選択肢があります。

自分で作っていくうちに、感覚やpythonの流れがわかってきて、応用なども自在になります。

自分も最初はこれだけのコードを書くのでさえ、エラーが起きないかビビりながらつくったものでした。

誰でも最初からできる人はいません。
今はいろんなところでネタや答えが手に入る時代です。

ガンガン作っていっちゃいましょう!

おまけ

最後にコピペ用にコードを書いておきます。
改変などは自由にお使いください。


import tkinter as tk

window = tk. Tk()
window.title("Window1")
window.geometry("500x700")

#ESCキーを押した時にウィンドウを閉じる
def close_window(event):
      window.destroy()
window.bind("<Escape>",close_window)

#main loop
window.mainloop()


御覧いただきありがとうございました!!


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