ویرگول
ورودثبت نام
دانشجویار
دانشجویار
خواندن ۵ دقیقه·۴ سال پیش

برنامه نویسی دسکتاپ با پایتون

زبان برنامه نویسی پایتون امروزه یکی از زبان های برنامه نویسی بسیار مطرح و کاربردی بوده و بسیاری از برنامه نویسان در سرتاسر دنیا به نوشتن برنامه با این زبان برنامه نویسی روی آورده اند. در این مقاله قصد داریم به برنامه نویسی دسکتاپ با پایتون آشنا شده و بدانیم که چگونه و با استفاده از چه فریم ورک هایی میتوان شروع به برنامه نویسی ویندوز با پایتون کرد. البته در این مقاله به فریمورک های کراس پلتفرم نیز اشاره می شود که به کمک آن ها میتوانید علاوه بر ساخت نرم افزار برای ویندوز برای دیگر پلتفرم ها نیز برنامه نویسی کنید.


فریم ورک PyQt

اولین فریمورک ما برای بررسی در این مقاله که برای نوشتن برنامه برای دسکتاپ نیز بسیار قدرتمند است، فریمورک PyQt است. این فریمورک در حقیقت Qt را که یک فریم ورک برای ایجاد رابط گرافیکی یا GUI در پایتون است. Qt خود در محیط C++ نوشته شده است اما PyQt حضور این فریمورک قدرتمند را برای پایتون میسر می کند. کد زیر نوشتن کلمه Hello world را با استفاده از این فریمورک در زبان پایتون نشان می دهد. باید گفت که این فریمورک قابلیت برنامه نویسی برای همه سیستم عامل ها را دارد.

import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel from PyQt5.QtGui import QIcon from PyQt5.QtCore import pyqtSlot def window(): app = QApplication(sys.argv) widget = QWidget() textLabel = QLabel(widget) textLabel.setText(&quotHello World!&quot) textLabel.move(110,85) widget.setGeometry(50,50,320,200) widget.setWindowTitle(&quotPyQt5 Example&quot) widget.show() sys.exit(app.exec_()) if __name__ == '__main__': window()

نتیجه کد بالایی تصویری به شکل زیر است.


فریم ورک Kivy

این فریم ورک نیز یکی از فریمورک هایی است که از اکثز سیستم عامل ها پشتیبانی کرده و جزو فریم ورک هایی است که مناسب ایجاد رابط گرافیکی یا GUI است. این فریمورک یک فریم ورک متن باز بوده و بسیاری از افراد به دلیل وجود کتابخانه های رایگان بسیار و قدرتمند بودن این فریم ورک ازآن استفاده می کنند. نمونه ای از کد این برنامه به شکل زیر می باشد. با استفاده از کد زیر به سادگی میتوانید Hello world را با استفاده از زبان برنامه نویسی پایتون و فریم ورک کیوی بنویسید.

#!/usr/bin/env python
from kivy.app import App #We need to import the bits of kivy we need as we need them as importing everything would slow the app down unnecessarily
from kivy.uix.widget import Widget #this is a thing that you want the App to display
from kivy.uix.label import Label #this will import the code for the label in which we want to display Hello World!
class Lesson1App(App):
def build(self):
lbl=Label(text='Hello World!') #lbl is a variable name being assigned the Label definition
return lbl #This  must match the name of the Widget you want to appear on screen
if __name__ == '__main__': #Documentation suggests that each program file should be called main.py but I think that only matters if you're creating the final App to go onto a phone or tablet we're a long way off from that yet
Lesson1App().run() #This must match the name of your App

فریم ورک Tkinter

فریمورک Tkinter در حقیقت به سادگی و قدرتمند بودن معروف است و یکی از پرطرفدارترین فریم ورک ها در بین برنامه نویسان برای طراحی رابط گرافیکی است. رابط گرافیکی موجود در Tkinter در حقیقت ترکیبی از رابط گرافیکی استاندارد پایتون با Tk است که نتیجه آن، این فریم ورک شده است. Tkinterیکی از فریم ورک هایی است که تعداد زیادی از منابع و آموزش ها برای آن وجود دارد و همچنین تعداد بسیار زیادی از ابزار ها و ویجت ها را برای برنامه نویسی در اختیار شما قرار میدهد. این قابلیت ها باعث می شود که Tkinter یکی از پکیج های مناسب برای برنامه نویسی دسکتاپ باشد. کد زیر نوشتن یک برنامه ساده با استفاده از Tkinter است.

from tkinter import Tk, Label, Button
class MyFirstGUI:
def __init__(self, master):
self.master = master
master.title(&quotA simple GUI&quot)
self.label = Label(master, text=&quotThis is our first GUI!&quot)
self.label.pack()
self.greet_button = Button(master, text=&quotGreet&quot, command=self.greet)
self.greet_button.pack()
self.close_button = Button(master, text=&quotClose&quot, command=master.quit)
self.close_button.pack()
def greet(self):
print(&quotGreetings!&quot)
root = Tk()
my_gui = MyFirstGUI(root)
root.mainloop()

فریم ورک PyGUI

این فریم ورک ساده ترین و همچنین سبک ترین فریم ورک در میان لیست ما است. با استفاده از این فریمورک به سادگی میتوانید شروع به برنامه نویسی ویندوز با پایتون نمایید. البته باید گفت که این فریم ورک نیز به مانند فریم ورک های دیگری که در این لیست معرفی کردیم به صورت مولتی پلتفرم بوده که این مورد خود جزو موارد بسیار مهم برای برنامه نویسی محسوب می شود و هر برنامه نویسی قبل از انتخاب فریم ورک خود برای شروع به کار این مورد را باید مد نظر داشته باشد. برنامه نویسان PyGUI تعداد کد های بسیار کمی را ما بین رابط گرافیکی و نرم افزار پایتون مینویسند که این صفحه کاری شما را به یک صفحه برای نمایش رابط گرافیکی تبدیل می کند.


WxPython

WxPython در حقیقت یک ماژول توسعه یافته پایتون است که یکی از ماژول های قدیمی و سنتی پایتون بوده و رابط گرافیکی برای پایتون را ارائه میدهد. یکی از نکات مهم راجع به این فریم ورک پایتون این است که WxPython توانایی ساخت نرم افزار برای ویندوز لینوکس و مک را دارد و با استفاده از آن میتوانید نرم افزار های سنتی این سه پلتفرم دسکتاپ را بنویسید. کد زیر Hello world را با استفاده از این فریم ورک در زبان برنامه نویسی پایتون نشان می دهد.

import wx
app = wx.App()
window = wx.Frame(None, title = &quotwxPython Frame&quot, size = (300,200))
panel = wx.Panel(window)
label = wx.StaticText(panel, label = &quotHello World&quot, pos = (100,50))
window.Show(True)
app.MainLoop()

بعد از اجرای کد بالا یک Box به شکل زیر ایجاد شده و Hello world در آن به نمایش در می آید.


در پایان باید گفت که این فریم ورک ها اکثراً مولتی پلتفرم بوده و به گونه ای طراحی شده اند که شما به سادگی بتوانید برنامه ساخته شده خود را در همه پلتفرم های مرسوم اجرا کرده و از آن استفاده کنید. انتخاب فریم ورک مناسب برای برنامه نویسی بیش از هرچیز دیگری به نوع و نحوه کار شما مرتبط بوده همه برنامه نویسان با توجه به نوع کاری که می خواهند انجام دهند فریم ورک مورد نیاز خود را انتخاب می کنند.

اگه علاقه مند به برنامه نویسی پایتون هستید و می خواهید مباحث جدید در این حوزه را آموزش ببینید از اینجا می توانید وارد سایت دانشجویار شده و بخش مقدماتی پایتون را به صورت کاملا رایگان آموزش ببینید.

پایتونبرنامه نویسیphytonبرنامه نویسی دسکتاپ
شاید از این پست‌ها خوشتان بیاید