Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
もうひとつのGUI環境PyWebView
Search
高見知英
PRO
December 09, 2019
Programming
1
2k
もうひとつのGUI環境PyWebView
2019/12/09 Python LT発表&交流会 #5で発表した資料です。
高見知英
PRO
December 09, 2019
Tweet
Share
More Decks by 高見知英
See All by 高見知英
大人になってからのゲームデビューのハナシ
takamichie
PRO
0
12
最近のゲーム実況のハナシ
takamichie
PRO
0
23
健常者から見たAndroidのアクセシビリティ機能
takamichie
PRO
0
410
山手縁乃庭のいまとこれから考えていること
takamichie
PRO
0
72
子どもとゲームとそのほかいろいろのハナシ
takamichie
PRO
0
67
高見知英のヒストリー
takamichie
PRO
0
53
SRPGがやりたい!
takamichie
PRO
0
160
ゲームについて 地域活動やってる人と話してみた話し
takamichie
PRO
0
550
AIを使う~プログラミングがAIでできるって本当ですか?~
takamichie
PRO
0
210
Other Decks in Programming
See All in Programming
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
290
ErdMap: Thinking about a map for Rails applications
makicamel
1
660
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.9k
HTML/CSS超絶浅い説明
yuki0329
0
190
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
130
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
テストコード書いてみませんか?
onopon
2
340
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.4k
선언형 UI에서의 상태관리
l2hyunwoo
0
270
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
10
5.2k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
22
1.3k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Why Our Code Smells
bkeepers
PRO
335
57k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
4 Signs Your Business is Dying
shpigford
182
22k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Six Lessons from altMBA
skipperchong
27
3.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Facilitating Awesome Meetings
lara
51
6.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
Transcript
もうひとつのGUI環境 PyWebView まちづくりエージェント SIDE BEACH CITY. 高見知英 12/9/2019 もうひとつのGUI環境PyWebView 1
高見知英 です! 2 もうひとつのGUI環境PyWebView 12/9/2019
言語 3 もうひとつのGUI環境PyWebView 12/9/2019 Python Javascri pt PHP CSS HTML5
Android Java UWSC C#
PythonでGUI Tkinter Pythonに同梱 部品をソースで配置 する昔ながらの手法 100% Python import tkinter as
tk import tkinter.ttk as ttk root = tk.Tk() root.title(“Title") root.iconbitmap(default=iconfile) root.resizable(width=False, height=False) notebook = ttk.Notebook() tab1 = tk.Frame(notebook) tab2 = tk.Frame(notebook) tab3 = tk.Frame(notebook) tab4 = tk.Frame(notebook) …………… 12/9/2019 もうひとつのGUI環境PyWebView 4
問題点 すべてがPython 振る舞いと見た目を分離できない アニメーションはツラい 処理中だからテキストを点滅させる 色鮮やかなアニメーションを表示する リファレンスが微妙に少ない 12/9/2019 もうひとつのGUI環境PyWebView 5
そこでPyWebView HTMLをGUIに使う エンジンは選択可能 MSHTML(Edge) CEF(Chrome) Bootstrapなどが そのまま利用可能 import webview import
threading webview.config.gui = ‘cef‘ window = webview.create_window(title=“Title“, html=“<html>“,width=600, height=800, debug=False) webview.start(proc, window, gui=“cef“) 12/9/2019 もうひとつのGUI環境PyWebView 6
解決できること HTMLとPythonで見た目と処理の分離 適宜PythonコードをAPIとして呼び出し可能 Bootstrap等で気軽におしゃれなUIが実現可能 全てのHTML5関連資料が役立つ PyWebView独自処理は少ない 開発継続中(わたしもIssueで何度か) 12/9/2019 もうひとつのGUI環境PyWebView 7
PyWebViewの問題 Pythonの他にHTML+CSS+JavaScriptを 学ぶ必要がある 脆弱性を作り込んだ場合被害はWebより深刻 デバッグがやりづらい GUI=ブラウザデバッグ機能、Python=開発環境 利用者が少なく独自マニュアルが少ない 12/9/2019 もうひとつのGUI環境PyWebView 8
複数のスキルセットを活用 それでもGUIの綺麗さはPythonの比でない わからないこと、難しいことはJavaScriptなどの ライブラリに任せられる なにより見た目が美しい! npmなどの豊富なライブラリ 構成によってはpipenvとnpmの二重管理 構成が複雑になりやすい=クラス設計を徹底 12/9/2019 もうひとつのGUI環境PyWebView
9
おわり ご清聴ありがとうございました 12/9/2019 もうひとつのGUI環境PyWebView 10