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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
高見知英
December 09, 2019
Programming
2.3k
1
Share
もうひとつのGUI環境PyWebView
2019/12/09 Python LT発表&交流会 #5で発表した資料です。
高見知英
December 09, 2019
More Decks by 高見知英
See All by 高見知英
ポッドキャストをはじめよう ポッドキャストのやりかたと続けるコツ
takamichie
0
110
高見知英とAndroid
takamichie
0
96
大人になってからのゲームデビューのハナシ
takamichie
0
89
最近のゲーム実況のハナシ
takamichie
0
110
健常者から見たAndroidのアクセシビリティ機能
takamichie
0
520
山手縁乃庭のいまとこれから考えていること
takamichie
0
160
子どもとゲームとそのほかいろいろのハナシ
takamichie
0
160
高見知英のヒストリー
takamichie
0
130
SRPGがやりたい!
takamichie
0
260
Other Decks in Programming
See All in Programming
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
150
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
370
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
5k
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
220
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
170
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
650
Making the RBS Parser Faster
soutaro
0
460
CDK Deployのための ”反響定位”
watany
5
800
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
130
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
440
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
290
Running Swift without an OS
kishikawakatsumi
0
850
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
210
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
490
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
680
Into the Great Unknown - MozCon
thekraken
41
2.4k
Scaling GitHub
holman
464
140k
A better future with KSS
kneath
240
18k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.9k
Are puppies a ranking factor?
jonoalderson
1
3.3k
Making Projects Easy
brettharned
120
6.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
So, you think you're a good person
axbom
PRO
2
2k
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