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
1.5k
もうひとつの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
29
SRPGがやりたい!
takamichie
PRO
0
66
ゲームについて 地域活動やってる人と話してみた話し
takamichie
PRO
0
330
AIを使う~プログラミングがAIでできるって本当ですか?~
takamichie
PRO
0
190
2023年新年の抱負
takamichie
PRO
0
120
今年なにやった?2022
takamichie
PRO
0
220
あなたは地域が好きですか?
takamichie
PRO
0
200
VoicePeakを使ってみた話
takamichie
PRO
0
260
Other Decks in Programming
See All in Programming
データアナリストが行うDatabricksを活用したETLの自動化事例
shinoa
0
260
雑に思考を整理する技術と効能
konifar
58
29k
Goのmultiple errorsについて (2024年4月版)
syumai
3
550
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
900
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
260
エンターテイメント業界で利用されるAWS
demuyan
0
210
Rails と人魚の話/rails-and-mermaid
sanfrecce_osaka
0
100
Rethinking UI building strategies @ SFI 2024
letelete
0
270
Elm 0.19.0 Changes
bkuhlmann
0
490
0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10
jaguar_imo
2
380
What We Can Learn From OSS
inouehi
0
420
Anthropic Cookbook のおすすめレシピ
schroneko
7
870
Featured
See All Featured
Infographics Made Easy
chrislema
238
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
274
13k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
BBQ
matthewcrist
80
8.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
14
1.5k
Code Reviewing Like a Champion
maltzj
514
39k
Embracing the Ebb and Flow
colly
80
4.1k
4 Signs Your Business is Dying
shpigford
175
21k
In The Pink: A Labor of Love
frogandcode
138
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
990
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