山姆的編程實作分享。。。

Sam Blog, Sam Sharing, Sam Studio

2021年7月24日

[Kivy] 在 PyCharm 建立 Kivy 的開發環境


 在挑選配合 Python 的 GUI Framework 時,Qt 和 Kivy 則是在眾多的 Framework candidates 中,最後留下細細研究的兩個 ,經過了開發環境的安裝以及淺嚐 "Hello World”App 的建立後,最最最後~,我決定了 Kivy。

原因如下:

  • MIT License

  • Open Source on GitHub

  • Cross-Platfrom, Kivy App can run on Windows, Linux, OSx, Android, iOS and RaspBerry Pi

  • Built-in OpenGL ES for GPU Accelerated


Kivy - 簡介


What is Kivy ? Kivy Introduction,這些問題我就交給 Kivy 官方網站了!

因為 Kivy  的官網以及它 WiKi上的 Documents 都提供相當多的資訊了,想對 Kivy 有初步的了解,是足夠的。



在 PyCharm 建立 Kivy 的開發環境 (On Windows 10)

Kivy 的開發環境,基本上是建立在 Terminal Mode,對於 IDEs 的開發環境倒是沒有多加說明。在 PyCharm 建立 Kivy 的開發環境,Kivy 雖有說明,我是有看沒有懂啊!於是就將自己的建立過程做了以下紀錄,分享給大家。


Step 1 - 安裝 Python 

首先就是點這連接 Download and Install Python 安裝 Python。


Step 2 - 建立 Virtual Environment (VM) for Kivy


python -m virtualenv kivy_venv


開啟 Windows 的 terminal,然後選定或建立一個資料夾,接著在選定的資料夾下執行上面 Command,來建立 kivy 要使用的 VM。  

以我為例,我是將 PyCharm 要用的 VM 都建立在 PyCharm 的工作目錄下,下圖可以看到我建立了 3 個 VM,分別用於 Kivy,MicroPython 以及 normal python。


下圖則是 Kivy VM 的檔案結構



Step 3 - 激活 Kivy VM  


kivy_venv\Scripts\activate


Kivy VM 建立好後,還不能使用,必須激活 (activate) 它,方法就是在 Kivy VM 的目錄下,執行上面 Command。


Step 4 - 安裝 Kivy  以及範例


python -m pip install kivy[base] kivy_examples


執行上面 Command,就能安裝 Kivy 基礎的 (base) 套件,若想要多安裝其他套件或完整套件,則可以在中括號內,改成 [base, media] 或是 [full]。

通過以上 4 步驟就完成 Kivy Framework 的安裝了,基本上你已經可以在 Terminal 開發 Kivy App 了。

剛才的 Kivy 安裝步驟裡,也包含範例的安裝,執行以下 Command 就能驗證你是否有安裝正確,以及觀看 Kivy GUI 的 Demo 喔!


python kivy_venv\share\kivy-examples\demo\showcase\main.py


PS: 以上 Install Kivy 以及建立 Kivy VM 更詳細的操作步驟,請參考 Kivy.org 的  Installing Kivy 說明網頁。


Step 5 - 在 PyCharm 建立 Kivy 專案 (Project)  

  1. 打開 Pycharm 後,請點選 File ->  New Project 來建立新專案。

  2. 接著在建立新專案視窗 ,如下圖紅色框,選擇 “Existing interpreter”,其x路徑就是你在 Step 2 建立 Kivy VM 下 python.exe 存在的目錄路徑。


  1. 順利完成新專案的建立後,點選 File -> Settings > Project  ,應該就能看到和下圖一樣是使用 Kivy VM 的設定了。


Step 6 - Copy & Paste then Run HelloWorld.py App

在還不了解如何撰寫 Kivy App 前,可以複製貼上,下面 “Hello World”的範例原始程式碼,來驗證 Kivy 在 PyCham 的執行環境。


'''

Application example using build() + return

==========================================


An application can be built if you return a widget on build(), or if you set

self.root.

'''


import kivy

kivy.require('1.0.7')


from kivy.app import App

from kivy.uix.button import Button



class TestApp(App):


    def build(self):

        # return a Button() as a root widget

        return Button(text='hello world')



if __name__ == '__main__':

    TestApp().run()


順利的話,你應該能看到和下圖一樣的結果。






 


熱門文章