Python開(kāi)發(fā)入門(mén)之如何制作一個(gè)簡(jiǎn)單的桌面應(yīng)用
前言
今天我們來(lái)學(xué)習(xí)一下,如何用Python制作一個(gè)簡(jiǎn)單的桌面應(yīng)用程序。雖然桌面應(yīng)用程序開(kāi)發(fā)并不是Python的主要領(lǐng)域,但是它也有很多優(yōu)秀的庫(kù)和工具,可以幫助我們快速實(shí)現(xiàn)想法。所以不妨跟我一起來(lái)探索一下Python的魅力吧!

下面讓我們來(lái)使用python寫(xiě)一個(gè)簡(jiǎn)單的計(jì)算器小程序
首先,根據(jù)要實(shí)現(xiàn)的功能,設(shè)計(jì)程序
| # 導(dǎo)入tkinter庫(kù)和樣式庫(kù)(美化界面)
| # 創(chuàng)建主窗口(可以設(shè)置主題色)
| # 創(chuàng)建相關(guān)運(yùn)算函數(shù)和其他函數(shù)
| # 創(chuàng)建相關(guān)按鈕
| # 啟動(dòng)循環(huán)事件
然后根據(jù)設(shè)計(jì)框架完善代碼,下面是完整代碼
# 導(dǎo)入tkinter庫(kù)
import tkinter as tk
# 導(dǎo)入ttkbootstrap庫(kù)
from tkinter import ttk
from ttkbootstrap import Style
# 創(chuàng)建主窗口,并使用minty主題
style = Style(theme='minty')
window = style.master
window.title('簡(jiǎn)易計(jì)算器')
window.geometry('300x400')
# 定義一個(gè)字符串變量,用于顯示計(jì)算結(jié)果
result = tk.StringVar()
result.set(0)
# 創(chuàng)建一個(gè)標(biāo)簽,用于顯示結(jié)果
label = tk.Label(window, bg='lightgreen', width=25, textvariable=result)
label.place(x=5, y=5)
# 定義一個(gè)列表,存儲(chǔ)按鈕的文本
buttons = ['Clear', 'Del', '%', '/',
'7', '8', '9', '*',
'4', '5', '6', '-',
'1', '2', '3', '+',
'.', '0', '=']
# 定義一個(gè)函數(shù),用于處理按鈕的點(diǎn)擊事件
def click(event):
global result # 聲明全局變量
value = event.widget['text'] # 獲取按鈕的文本
if value == '=': # 如果是等號(hào),就計(jì)算表達(dá)式的值,并顯示結(jié)果
try:
result.set(result.get() + '=' + str(eval(result.get())))
except:
result.set('Error')
elif value == 'Clear': # 如果是清除鍵,就清空結(jié)果
result.set(0)
elif value == 'Del': # 如果是刪除鍵,就刪除最后一個(gè)字符
if result.get() != 0:
result.set(result.get()[:-1])
else: # 其他情況,就在結(jié)果后面追加字符
if result.get() == '0':
result.set(value)
else:
result.set(result.get() + value)
# 循環(huán)創(chuàng)建按鈕,并綁定點(diǎn)擊事件,并設(shè)置按鈕的形狀和大小為圓角和大號(hào)(rounded-lg)
x = 5 # 按鈕的初始橫坐標(biāo)
y = 50 # 按鈕的初始縱坐標(biāo)
for i in range(len(buttons)):
button = ttk.Button(window, text=buttons[i], width=6, style='success.TButton') # 創(chuàng)建按鈕對(duì)象,并指定樣式為rounded-lg.TButton
button.place(x=x, y=y) # 放置按鈕對(duì)象到窗口上
button.bind('<Button-1>', click) # 綁定點(diǎn)擊事件到函數(shù)click上
x += 70 # 更新橫坐標(biāo)
if (i + 1) % 4 == 0: # 如果是每行的最后一個(gè)按鈕,就換行,并重置橫坐標(biāo)和縱坐標(biāo)
x = 5
y += 50
# 啟動(dòng)主循環(huán)
window.mainloop()下面是運(yùn)行示例



總結(jié)
到此這篇關(guān)于Python開(kāi)發(fā)入門(mén)之如何制作一個(gè)簡(jiǎn)單的桌面應(yīng)用的文章就介紹到這了,更多相關(guān)Python制作桌面應(yīng)用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django的URLconf中使用缺省視圖參數(shù)的方法
這篇文章主要介紹了Django的URLconf中使用缺省視圖參數(shù)的方法,Django是最著名的Python的web開(kāi)發(fā)框架,需要的朋友可以參考下2015-07-07
python實(shí)現(xiàn)一組典型數(shù)據(jù)格式轉(zhuǎn)換
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)一組典型數(shù)據(jù)格式轉(zhuǎn)換,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
使用Django框架中ORM系統(tǒng)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)增刪改查
這篇文章主要介紹了使用Django的ORM實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)增刪改查方法,文中附含詳細(xì)示例代碼以及過(guò)程詳解,有需要的朋友可以借鑒參考下2021-09-09
Python用于學(xué)習(xí)重要算法的模塊pygorithm實(shí)例淺析
這篇文章主要介紹了Python用于學(xué)習(xí)重要算法的模塊pygorithm,結(jié)合實(shí)例形式簡(jiǎn)單分析了pygorithm模塊的功能、算法調(diào)用、源碼獲取、時(shí)間復(fù)雜度計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2018-08-08
Django 允許局域網(wǎng)中的機(jī)器訪問(wèn)你的主機(jī)操作
這篇文章主要介紹了Django 允許局域網(wǎng)中的機(jī)器訪問(wèn)你的主機(jī)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
python實(shí)現(xiàn)AES和RSA加解密的方法
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)AES和RSA加解密的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03
Python安裝selenium包詳細(xì)過(guò)程
在本篇文章里小編給大家整理了關(guān)于Python安裝selenium包詳細(xì)過(guò)程,需要的朋友們可以學(xué)習(xí)下。2019-07-07

