00:06
神経質やせ男です。 今日は、【pywebview】で作ったTodoリストの解説その3、プログラム改善編です。
前回までで、Todoリストとしては一応完成していました。 ただアプリというのは、完成した瞬間から少しずつ使われなくなっていきます。
なので今回は、最低限ですが、使い勝手を良くする改善を加えてみました。 まず見た目の変更点です。
Todoのリストにチェックボックスをつけました。 チェックを入れると、タスク名に取り消し線が入ります。
これだけでも終わったタスクと、これからやるタスクが一目で分かるようになります。 もう一つ、終了ボタンを追加しました。
これでアプリをきちんと終了できるようにしています。 次に構成の話です。
htmlファイルとpythonファイルは同じフォルダーに置き、 JavaScriptはjsフォルダー、CSSはcssフォルダーに分けています。
まだ小規模ですが、機能ごとに分けておくと、後々かなり楽になります。
html側では、入力欄、追加ボタン、終了ボタン、そしてTodoを表示するリストというシンプルな構造です。
次にJavaScriptです。 追加ボタンでは、これまで通り、Pythonにタスク名を渡します。
戻ってきたタスクをチェックボックス付きで表示し、チェックが入ると、CSSのクラスを切り替えて取り消し線を表示します。
ここでは、JavaScriptとCSSの役割分担がきれいに分かれる部分です。 そして終了ボタン。
終了ボタンを押すと、まず確認ダイアログを出して、OKが押された場合だけ、Python側に終了処理を渡します。
Python側では、APIクラスに終了用のメソッドを追加しました。 ここで使っているのがWindows Destroyです。
よくある疑問として、SysExitじゃダメなの?という点があります。 SysExitはアプリを表示する前にプログラムを止めるためのもの。
一方で、画面を表示した後にアプリを閉じる場合は、Windows Destroyを使います。 これを間違えると、画面が残ったまま何も反応しなくなるので、
初心者のうちはこの違いだけ覚えておけば大丈夫です。 今回の改善でToDoアプリとして、かなりアプリっぽくなりました。
次回は、ToDoを追加した後の処理や、JavaScriptとPythonの役割分担について、もう少し深掘りしていきます。
それではまた次回。
次回は、Pyware View、ToDo改善とJS Code解説4についてお話しする予定です。 ご静聴ありがとうございました。