06.以Python和Kivy開發APP|Kivy-Label|Label內加入canvas.before(帆布背景)

更新於 2024/11/28閱讀時間約 6 分鐘

本篇開始:

  • 我的開發環境是win11
  • python是3.10.7版本
  • kivy我設定在2.1.0版本
  • 編碼的工具是Visual Studio Code(VS Code)

以我實際開發的APP為例,

我想做的是可以訓練基本加(減)法的心算工具。

命名app叫 「CountInMind」。


前言:

繼續製作app首頁,編寫countinmind.kv,在底下使用FloatLayout版面。

1.在 Label內增加canvas來凸顯說明文字

請參照03篇來新增canvas,03.以Python和Kivy開發APP|Kivy-canvas|設定canvas(帆布、背景)大小、顏色、位置

2.加入帆布(canvas要小寫,語法要求)


3.設定顏色(Color字首大寫)

使用白色背景框 (rgb數值可以參考其他網站說明)


4.設定矩形(Rectangle字首大寫)

4-1.矩形大小

self.width0.9(寬度為視窗寬的0.9倍)、self.height0.3(長度為視窗長的0.3倍)

4-2.矩形位置

self.width0.05(橫軸位置在視窗寬的0.05倍)、self.height0.3(縱軸位置在視窗長的0.5倍)

以下程式碼(.kv):

canvas:        
Color:
rgb: (255/255, 255/255, 255/255)
Rectangle:
size: self.width*0.9, self.height*0.3
pos: self.width*0.05, self.height*0.5
raw-image

▲矩形位置是以左下角為原點起算。有沒有發現原本的說明文字不見了!


5.使用 canvas屬性before調整順序:將 canvas移至 text文字底下


6.以下為本篇完整程式碼(.kv)

#: kivy 2.1.0

<Firstscreen>:
FloatLayout:
canvas:
Color:
rgb: (117/255, 220/255, 141/255)
Rectangle:
size: self.size
pos: self.pos

Label:
text:'歡迎使用心算高手'
font_name: './font/TW-Kai-98_1.ttf'
bold: True
font_size: 30
color: 'black'
pos_hint: {'center_x':0.5, 'center_y':0.9}

Label:
text: '作品說明:...abcdef...123456789**++--//'
text_size: 230, 250
valign: 'center'
font_name: './font/TW-Kai-98_1.ttf'
font_size: 23
color: (30/255, 30/255, 30/255) # 'white'
pos_hint: {'center_x':0.5, 'center_y':0.65}
canvas.before:
Color:
rgb: (255/255, 255/255, 255/255)
Rectangle:
size: self.width*0.9, self.height*0.3
pos: self.width*0.05, self.height*0.5

<SM>:
transition:

Firstscreen:
raw-image

▲有點像在ppt移至下一層概念

7.本篇小結

加入 canvas.before,使 Label有個白色底框來凸顯文字說明。

本篇所使用程式碼(.py):請參考這篇內容,01.以Python和Kivy開發APP|Kivy-Window|調整APP視窗大小


本篇結束:

在自學路上遇到困難是很正常的事,只要堅持到底,相信就會有所成果,期勉大家一同努力。

avatar-img
0會員
11內容數
主要分享應用程式開發過程、遭遇困難及解決技巧,提供給自學或獨立開發者做為參考,希望能對您們有所幫助。 工作繁忙,無法及時回覆留言請多包涵。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
艾肯比工程師 的其他內容
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 以我實際開發的APP為例, 本篇說明如何增加Label文字框、調整文字(水平垂直)位置及調整顏色。
在Win11以python及kivy開發APP應用程式,本篇文章說明如何改變Label文字字型。
在Win11以python及kivy開發APP應用程式,本篇文章說明如何設定canvas(帆布、背景)大小、顏色、位置。
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 以我實際開發的APP為例, 我想做的是可以訓練基本加(減)法的心算工具, 這個創意起源是我在國小高年級時,
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 1.開發專案: 首先要有開發的創意點子,以我實際開發的APP為例, 我想做的是可以訓練基本加(減)法的心算
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 以我實際開發的APP為例, 本篇說明如何增加Label文字框、調整文字(水平垂直)位置及調整顏色。
在Win11以python及kivy開發APP應用程式,本篇文章說明如何改變Label文字字型。
在Win11以python及kivy開發APP應用程式,本篇文章說明如何設定canvas(帆布、背景)大小、顏色、位置。
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 以我實際開發的APP為例, 我想做的是可以訓練基本加(減)法的心算工具, 這個創意起源是我在國小高年級時,
本篇開始: 我的開發環境是win11 python是3.10.7版本 kivy我設定在2.1.0版本 編碼的工具是Visual Studio Code(VS Code) 1.開發專案: 首先要有開發的創意點子,以我實際開發的APP為例, 我想做的是可以訓練基本加(減)法的心算
你可能也想看
Google News 追蹤
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
from win32com.client import Dispatch path = "D:\PROGRAMMING\PythonCode\pypptx\image1.png" # 启动PowerPoint应用程序 ppt = Dispatch('PowerPoint.Applicatio
Thumbnail
你好,在下最近在學習開發web,學了html css js,也得出一些心得,由於網路上已有許多教學,所以我會著重在如何開發出to do List,以及解釋我寫的程式碼。相關的教學我會直接貼網址。如果我有什麼地方出錯,或者是可以寫得更好,歡迎在下方留言,討論。 首先先介紹我的開發環境: 我用了vs
Thumbnail
本文利用pyqt5,使用pyttsx3將QLineEdit(單行輸入框)的字串,轉成語音呈現出來。
Thumbnail
理解一個全新的操作環境有時候可能是一個挑戰,尤其對於那些剛開始接觸VS Code的開發者來說,即便具備一定的英文閱讀能力,可能也會對這個陌生的操作環境感到徬徨和不安。不過,沒有必要擔心,我們接下來就來一起用短短的一分鐘時間,將VS Code轉換成最熟悉的中文環境吧! 安裝繁體中文語言包 由於VS
Thumbnail
成功加入Anytype之後就可以開始探索這一個開源的筆記軟體了^_^ 開始Anytype之前..... 1.刪除所有初始物件 2.思考自己的使用需求 3.不著急學會所有功能
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
IDE 升級後出現了一樣的錯誤,手上程式碼沒有 pylint black-format 檢查上不了 gitlab,我又點開了那個很小很小的 x 符號,裡面 logs 提示的解決方式是升級..
Thumbnail
本文探討了複利效應的重要性,並藉由巴菲特的投資理念,說明如何選擇穩定產生正報酬的資產及長期持有的核心理念。透過定期定額的投資方式,不僅能減少情緒影響,還能持續參與全球股市的發展。此外,文中介紹了使用國泰 Cube App 的便利性及低手續費,幫助投資者簡化投資流程,達成長期穩定增長的財務目標。
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
from win32com.client import Dispatch path = "D:\PROGRAMMING\PythonCode\pypptx\image1.png" # 启动PowerPoint应用程序 ppt = Dispatch('PowerPoint.Applicatio
Thumbnail
你好,在下最近在學習開發web,學了html css js,也得出一些心得,由於網路上已有許多教學,所以我會著重在如何開發出to do List,以及解釋我寫的程式碼。相關的教學我會直接貼網址。如果我有什麼地方出錯,或者是可以寫得更好,歡迎在下方留言,討論。 首先先介紹我的開發環境: 我用了vs
Thumbnail
本文利用pyqt5,使用pyttsx3將QLineEdit(單行輸入框)的字串,轉成語音呈現出來。
Thumbnail
理解一個全新的操作環境有時候可能是一個挑戰,尤其對於那些剛開始接觸VS Code的開發者來說,即便具備一定的英文閱讀能力,可能也會對這個陌生的操作環境感到徬徨和不安。不過,沒有必要擔心,我們接下來就來一起用短短的一分鐘時間,將VS Code轉換成最熟悉的中文環境吧! 安裝繁體中文語言包 由於VS
Thumbnail
成功加入Anytype之後就可以開始探索這一個開源的筆記軟體了^_^ 開始Anytype之前..... 1.刪除所有初始物件 2.思考自己的使用需求 3.不著急學會所有功能
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
IDE 升級後出現了一樣的錯誤,手上程式碼沒有 pylint black-format 檢查上不了 gitlab,我又點開了那個很小很小的 x 符號,裡面 logs 提示的解決方式是升級..