daneshjooyar
نذری دانشجویار
صفحه نخست
 » 
آموزش برنامه نویسی ویندوز
 » 
آموزش پایتون
 » 
دوره آموزش PyQt برای پایتون
دوره آموزش PyQt برای پایتون

دوره آموزش PyQt برای پایتون

PyQt یا پای کیوت، برنامه ی پیشنهادی برای رابط گرافیکی کاربران در پایتون است. PyQt یک افزونه پایتون می باشد که در مطلب آموزش PyQt به بررسی آن خواهیم پرداخت. آموزش PyQt پای کیوت یا PyQt یک نرم افزار آزاد یا Free software است که به عنوان یک افزونه پایتون استفاده می شود. PyQt از لینوکس، OS و ویندوز […]

سرفصل های دوره

۱ فصل
۱۴ جلسه
۱۱ ساعت
۱

لیست ویدئوهای دوره

۱۴ قسمت
۱۰:۵۹:۳۶

قسمت اول - نصب و راه‌اندازی PyQt5

رایگان
۲۸:۲۶

قسمت دوم - معرفی QtCore

۲۵:۵۸

قسمت سوم - آشنایی با مباحث اولیه

۰۱:۰۴:۲۸

قسمت چهارم - آشنایی با Layout Management

۵۰:۲۱

قسمت پنجم - آشنایی با Event & Signal & Slot

۳۵:۴۰

قسمت ششم - کار با Dialog

رایگان
۳۷:۴۱

قسمت هفتم - کار با Widgets

۵۹:۴۲

قسمت هشتم - Painting in PyQt5

۴۹:۴۷

قسمت نهم - ساخت ویجت سفارشی Nero

۳۹:۴۳

قسمت دهم - آشنایی با محیط Qt_Designer

۴۱:۴۸

قسمت یازدهم - فراخوانی‌ها و Multi threading

۵۹:۳۵

قسمت دوازدهم - Drag And Drop و کار با OpenGl

رایگان
۰۱:۰۰:۴۵

قسمت سیزدهم - کار با دیتابیس

۰۱:۱۰:۲۶

قسمت چهاردهم - CSS و معرفی Pyinstaller

۳۵:۱۶

لینک فایل های جانبی

PyQt یا پای کیوت، برنامه ی پیشنهادی برای رابط گرافیکی کاربران در پایتون است. PyQt یک افزونه پایتون می باشد که در مطلب آموزش PyQt به بررسی آن خواهیم پرداخت.

آموزش PyQt

پای کیوت یا PyQt یک نرم افزار آزاد یا Free software است که به عنوان یک افزونه پایتون استفاده می شود. PyQt از لینوکس، OS و ویندوز مایکروسافت پشتیبانی می‌کند.

PyQt شامل زیرمجموعه ای از ماژول‌های مختلف است که هر کدام وظیفه خاصی را بر عهده دارد.

نکته
چناچنه علاقه مند به یادگیری زبان قدرتمند پایتون می باشید، می توانید آموزش پایتون را مشاهده نمایند.

آموزش pyqt5 در پایتون

در آموزش PyQt قصد داریم به طور کامل با این نرم افزار آشنا شویم و نحوه کار با بخش های مختلف آن را آموزش دهیم.

آنچه در آموزش PyQt خواهید آموخت:

**قسمت اول (معرفی، نصب و راه‌اندازی PyQt)

در این بخش ابتدا آموزش PyQt، به تعریف PyQt می‌پردازیم و در مورد شرکت توسعه‌دهنده آن صحبت می‌کنیم. سپس به معرفی انواع ماژول‌های تشکیل‌دهنده PyQt و تفاوت نسخه 4 و 5 PyQt می‌پردازیم و امکانات جدیدی که به PyQt5 اضافه شده را ذکر می‌کنیم. نحوه نصب PyQt5 را به‌صورت عملی مشاهده می‌کنیم و سپس نحوه نصب Qt_Designer را هم توضیح می‌دهیم. سپس وارد محیط پایتون شده و یک پنجره ساده با استفاده از دستوارت PyQt5 ایجاد می‌کنیم و نمایش می‌دهیم.

درصورتی‌که در هنگام کامپایل به ارور مربوط به dll مواجه شویم، winpython را معرفی می‌کنم تا بتوانیم در هنگام کامپایل با این ارور مواجه نشویم.

  • PyQt چیست؟
  • ماژول‌های تشکیل‌دهنده PyQt5
  • تفاوت PyQt4 و PyQt5
  • نصب و راه‌اندازی PyQt5
  • نصب و راه‌اندازی Qt_Designer
  • معرفی دستوارت پایه و ساخت یک برنامه ساده در PyQt5
  • معرفی و نصب winpython

**قسمت دوم (معرفی QtCore در PyQt و کار با مباحث شی گرایی)

در این بخش ابتدا به معرفی و کاربردهای ماژول QtCore و سپس به معرفی کلاس‌های QTime,QDate,Qt,QDateTime که در داخل ماژول QtCore قرار دارد، می‌پردازیم. با حل 3 مثال در مورد کلاس‌های ذکرشده مبحث مربوطه را خاتمه داده و مباحثشی گرایی در داخل PyQt5 را شروع می‌کنیم. هدف از نوشتن برنامه با رعایت اصولشی گرایی را هم ذکر می‌کنیم.

به معرفی دستور super().__init__() می‌پردازیم. در آخر با حل یک مثال برای تنظیم کردن آیکون به برنامه، این بخش را تمام می‌کنیم.

  • معرفی ماژول و کلاس‌های QtCore در PyQt5
  • کار با کلاس‌های QDate,Qtime
  • طراحی یک برنامه برای نمایش تاریخ و ساعت
  • حل مثال تعداد روزها در ماه و سال
  • کار با مباحثشی گرایی در PyQt5
  • معرفی دستور __init__()
  • تنظیم کردن آیکون بروی برنامه در PyQt5

**قسمت سوم (آشنایی با مباحث اولیه، MenuBar،ToolBar)

در بخش سوم آموزش PyQt، سعی شده تا با حل مثال‌های متعدد در داخل پایتون بتوانیم بیشتر ویجت ها را معرفی کنیم و نحوه کار با آن‌ها را یاد بگیریم. سپس به معرفی menubar، statusbar، submenu، checkmenu، contextmenu و toolbar خواهیم پرداخت. در آخر با حل یک مثال کلی همه این مباحث را در کنار هم قرار خواهیم داد.

  • نحوه نمایش tooltip
  • آشنایی با مباحث اولیه سیگنال و اسلات
  • نحوه بستن پنجره فرم با pushButton
  • نحوه کار با message Box
  • نحوه تنظیم پنجره فرم در وسط صفحه
  • نحوه ساخت statusbar
  • نحوه ساخت menubar
  • نحوه ساخت submenu
  • نحوه ساخت checkmenu
  • نحوه ساخت contextmenu
  • نحوه کار با toolbar
  • حل یک مثال کلی

**قسمت چهارم (آشنایی با Layout Management)

مدیریت طرح در حقیقت یک روش برای قرار دادن ویجت بروی فرم می‌باشد که دارای چندین روش و متد می‌باشد. ما با استفاده از دو روش می‌توانیم ویجت ها را بر روی فرم قرار دهیم:

1-موقعیت دهی قطعی

2-استفاده از کلاس‌های layout

ما در این بخش با انواع مدیریت طرح آشنا خواهیم شد. معایب و مزایای هرکدام را ذکر می‌کنیم و با حل مثال به‌صورت عملی این مطالب را یاد می‌گیریم.

  • موقعیت دهی قطعی Absolute
  • معرفی Box Layout
  • معرفی Vertical Box Layout
  • معرفی Horizontal Box Layout
  • نحوه با Layout های توردتو
  • معرفی Grid Layout
  • ساخت یک ماشین‌حساب با Grid Layout

**قسمت پنجم (آشنایی با Event & Signal & Slot)

برنامه‌های GUI رویداد محور هستند. رویدادها به‌صورت کلی توسط کاربر ساخته می‌شود.

اما می‌توانند توسط اتصالات اینترنتی، مدیریت پنجره یا یک تایمر هم ایجاد شوند.

در مدل رویداد، سه عنصر اصلی مشارکت دارد:

1-Event source

2-Event object

3-Event target

PyQt5 برای کار با رویداد یک مکانیسمی تحت عنوان Signal and slot دارا می‌باشد.

که برای ارتباط بین اشیاء مختلف فرم می‌توان از این مکانیسم استفاده کرد.

  • معرفی Event
  • معرفی Signal and Slot
  • طراحی یک برنامه برای کنترل LCD Number
  • آشنایی با تابع keyPressEvent برای کار با کیبورد
  • حل یک مثال برای کار با کیبورد
  • آشنایی با Event Object
  • آشنایی با Mouse Tracking
  • طراحی یک برنامه برای نمایش مختصات مووس
  • آشنایی با مفهوم Event Sender و حل یک مثال
  • معرفی Emit Signal
  • ساخت سیگنال‌های سفارشی
  • طراحی یک برنامه برای ساخت سیگنال سفارشی

**قسمت ششم (کار با Dialog در PyQt5)

پنجره‌های دیالوگ و دیالوگ یک قسمت ضروری و حتمی در برنامه GUI می‌باشد. در مباحت کامپیوتری یک دیالوگ در حقیقت یک پنجره برای صحبت کردن با برنامه اصلی می‌باشد.

ما انواع مختلفی دیالوگ داریم:

1-Input Dialog

2-Font Dialog

3-File Dialog

4-Color Dialog

و …

که هرکدام برای موارد خاص مورداستفاده قرار می‌گیرد. ما در این بخش به بررسی هرکدام از آن‌ها می‌پردازیم:

  • معرفی و ساخت Input Dialog
  • معرفی و ساخت Color Dialog
  • معرفی و ساخت Font Dialog
  • معرفی و ساخت File Dialog

**قسمت هفتم (کار با Widgets)

ویجت ها به‌عنوان اساس و پایه بلاک‌های ساختاری یک برنامه مورداستفاده قرار می‌گیرد.

PyQt5 دارای تعداد زیادی ویجت هست ازجمله:

  • Button
  • Check Box
  • Slider
  • List Box
  • و…

در این بخش ما در مورد ساخت ویجت هایی که کاربرد زیادی دارند بحث خواهیم کرد و با حل مثال‌های گوناگون این مطالب را یاد خواهیم گرفت.

  • کار با QCheckBox
  • کار با Toggle button
  • کار با QSlider
  • ساخت یک برنامه برای ولوم صدا با Slider
  • کار با تایمر
  • کار با Progress Bar
  • معرفی ویجت تقویم
  • ساخت برنامه تقویم با QCalendar
  • نحوه کار با تصاویر
  • کار با QPixmap
  • کار با QLineEdit
  • کار با QSplitter
  • کار با QComboBox

**قسمت هشتم (Painting in PyQt5)

قابلیت Paint در PyQt5 برای رندر گرافیکی، تصاویر و طرح کلی فونت یک متن بکار می‌رود. مهم‌ترین دلیل استفاده از این قابلیت در PyQt5 برای ساخت یا تغییر یک ویجت با استفاده از Painting می‌باشد. برای ساخت یک ویجت از ابتدا یا تغییر آن ضروری است تا تسلط کامل بر مباحت Painting در PyQt5 داشته باشید.

  • معرفی QPainter
  • آشنایی با Drawing text
  • نحوه طراحی نقطه Point
  • ساخت برنامه Point Random
  • کار با رنگ و فریم‌ها در PyQt5
  • آشنایی با QPen
  • ساخت برنامه Pen Styles
  • آشنایی با QBrush
  • ساخت برنامه Brush Styles
  • نحوه رسم مستطیل
  • نحوه رسم بیضی

**قسمت نهم (ساخت ویجت سفارشی Nero)

در این بخش به ساخت یک ویجت سفارشی به اسم Burning Widget می‌پردازیم که با یک Slider کنترل می‌شود. شاید نمونه آن را در داخل Nero مشاهده کرده باشید.

بعد از این بخش و یادگیری آن به‌راحتی می‌توان ویجت های سفارشی خود را ساخت و از آن استفاده کرد.

  • ساخت ویجت سفارشی Burning Widget

**قسمت دهم (آشنایی با محیط Qt_Designer)

در این پارت با معرفی محیط Qt_Designer شروع می‌کنیم. بخش‌های مختلف Qt_Designer را معرفی می‌کنیم و سپس شروع به طراحی یک مثال ساده می‌کنیم.

تفاوت کار با سیگنال و اسلات را در داخل Qt_Designer با حل یک مثال یاد می‌گیریم. به معرفی انواع Layout ها از قبیل Vertical,Horizontal,Grid می‌پردازیم. سپس نحوه اولویت دادن به ویجت های موجود در Qt_Designer را یاد می‌گیریم. در آخر Edit Buddies را معرفی می‌کنم و هدف از ایجاد آن و نحوه کار با آن را یاد می‌گیریم.

  • معرفی محیط Qt_Designer
  • طراحی یک برنامه ساده در Qt_Designer
  • کار با Menu Bar در Qt_Designer
  • آشنایی با Signal & Slot در Qt_Designer
  • آشنایی با Widgets در Qt_Designer
  • آشنایی با Layouts در Qt_Designer
  • کار با Tab Order در Qt_Designer
  • کار با Edit Buddies
  • کار با Pyuic5
  • نحوه تبدیل فایل ui به فایل py
  • طراحی slot سفارشی

**قسمت یازدهم (فراخوانی‌ها و Multi threading)

در این بخش ابتدا به مباحث فراخوانی window و Dialog window از داخل MainWindow می‌پردازیم. سپس با table widget کار خواهیم کرد.

به بررسی هدف جداکردن کد پایتون از کد تولیدشده می‌پردازیم و هدف از این کار را ذکر می‌کنیم و در آخر مباحث مربوط به نخ‌ها در داخل PyQt5 پوشش می‌دهیم.

  • فراخوانی DialogWindow از داخل MainWindow
  • نحوه ارتباط DialogWindow با MainWindow
  • آشنایی با tableWidget و ست کردن item
  • جدا کردن کد پایتون و کد تولید شده
  • آشنایی با تابع processEvent
  • آشنایی با Multi Threading و QThread

**قسمت دوازدهم (آشنایی با Drag And Drop و کار با OpenGl)

در این بخش ابتدا با مباحث مربوط Drag And Drop آشنا خواهیم شد. سپس به بررسی کتابخانه OpenGl خواهیم پرداخت و یک برنامه با OpenGl ساخته و آن را در داخل فرم به نمایش در خواهیم آورد.

  • نحوه کار با Drag And Drop
  • ویرایش مجدد تابع مربوط Drag And Drop
  • فعالسازی Drop برای Push Button
  • ویرایش مجدد تابع مربوط Drop Combo Box
  • Drag And Drop in List Widget
  • معرفی و نصب OpenGl بروی پایتون
  • آشنایی با مفاهیم اولیه OpenGl
  • ساخت یک برنامه House
  • آشنایی QOpenlWidget
  • ارتباط OpenGl و PyQt5

**قسمت سیزدهم (کار با دیتابیس)

در این پارت به مباحت کار با دیتابیس می‌پردازیم. ابتدا کار با دیتابیس sqlite را یاد می‌گیریم. نحوه ایجاد دیتابیس و کانکت شدن به دیتابیس و دستوارت update و delete و input و fetch را یاد می‌گیریم. به معرفی ماژول و کلاس‌های QtSql می‌پردازیم که این ماژول در داخل PyQt5 قرار گرفته شده و برای کار با دیتایس از کلاس‌های این ماژول استفاده می‌شود.

دستورات این ماژول کاملاً با دستوارت sqlite فرق دارد، که در داخل دوره هم به آن اشاره می‌کنیم و تفاوت‌های هردو را نشان می‌دهیم.

  • معرفی SQLite
  • ساخت connection و معرفی cursor در SQLite
  • Insert کردن در SQLite
  • واکشی داده در SQLite
  • Update کردن SQLite
  • Delete کردن در SQLite
  • DataInput در SQLite
  • معرفی QtSQL و لایه‌های زیرساخت
  • معرفی Model و آشنایی با QSqlTablModel
  • ساخت و connect شدن به بانک اطلاعات در QtSQL
  • واکشی اطلاعات و نمایش در QtSQL
  • اضافه کردن و حذف کردن رکورد در QtSQL

**قسمت چهاردهم (معرفی و کار با CSS و معرفی pyinstaller)

در قسمت نهایی آموزش PyQt، این بخش به یادگیری و نحوه کار با دستوارت CSS جهت زیبا ساختن ظاهر گرافیکی برنامه می‌پردازیم. نحوه کار با رنگ‌ها و تنظیم عکس بروی پس زمینه را یاد خواهیم گرفت.

سپس به معرفی pyrcc5 خواهیم پرداخت. در آخر دوره هم به معرفی pyinstaller برای تبدیل فایلهای پایتون به فایل exe خواهیم پرداخت.

  • نحوه ست کردن عکس بروی پس زمینه
  • ساخت برنامه لاگین با PyQt5
  • معرفی CSS Style
  • کار با دستورات CSS
  • معرفی Gradient
  • معرفی pyrcc5 برای تبدیل فایل qrc به فایل پایتون
  • معرفی ماژول pyinstaller
  • آشنایی با option های pyinstaller
  • تبدیل فایل پایتون به فایل exe
  • معرفی vc_redist

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

توضیحات بیشتر

مدرس

فرشاد باقری

فرشاد باقری مدرس

دانشجوی مهندسی نرم افزار هستم و علاقمند به زمینه بازی سازی و بینایی ماشین هستم ، بیشتر به python و سی شارپ علاقمندم و در زمینه بینایی ماشین با متلب و پایتون و سی شارپ با کتابخانه OpenCv فعالیت می کنم.

دوره های مرتبط

برترین دوره ها
دوره بررسی تغییرات و ویژگی های جدید در پایتون 3.10
آموزش django rest framework مقدماتی- فریم ورک رست جنگو
۳۵% تخفیف
بسته طلایی آموزش برنامه نویسی با زبان پایتون
۳۵% تخفیف
دوره آموزش فریمورک کیوت (Qt)- پیشرفته
۳۵% تخفیف

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

۲۷ نظر درباره «دوره آموزش PyQt برای پایتون»

  1. 777

    777

    کیفیت صدا بشدددددددددددددددددت بده بشدددددددددددددددددت

  2. mohammadmahdi.d

    mohammadmahdi.d

    صدا بسیار ازاردهنده است :(

  3. alishirazi

    alishirazi

    مدرس مسلط هستن اما کیفیت صدا خیلی بد و گوش آزار هستش

  4. مجتبی

    مجتبی

    سلام.خسته نباشید.
    خاستم بدونم با pyqt میشه خروجی اندروید گرفت؟
    ممنون میشم جواب بدین

  5. Naji

    Naji

    سلام مهندس خسته نباشی من یه مشکلی دارم من ماژول های pyqt5 vs pyqt5-tools رو از طریق محیط داس دانلود و نسب کردم یعنی pip هاشو الان اون مسیری که شما میگین رو میرم هیچی اونجا نیست ولی imoprt میکنم هست کار میکنه ولی اون نرم افزار qtdisainer اونجا نیست

  6. salmani.h62

    salmani.h62

    با سلام و خسته نباشید.
    لطفا ایمیل خود چک نمایید سوالی در خصوص درس شماره ۱۱ دارم و ممنون میشم اگر پاسخ دهید.
    سوال در این خصوص میباشد که اگر پنجره دوم غیر از dilog with button باشد برنامه دچار مشکل میگردد اگر از window.exec_() استفاده کنیم.

  7. زهرا نوری

    زهرا نوری

    واقعا این دوره ، از بهترین دوره های موجود برای این فریمورک هستش خسته نباشین میگم به مدرس باقری و سایت دانشجویار

  8. آرین

    آرین

    بنده این دوره رو تهیه و استفاده کردم. از معدود آموزش های زبان فارسی در مورد این فریم ورک هست. نسبت به هزینه ای که پرداخت می کنیم واقعا می ارزه. تنها ایرادش کیفیت پایین صدا بود به نظرم.

  9. sa

    sa

    سلام. آیا به جای pyqt می توان از خود برنامه QT5 استفاده کرد.

  10. mohammad23

    mohammad23

    من این دوره تهیه کرده بودم ، مدرس خیلی خوب تدریس میدن و دوره جامعی هستش
    ممنون از اقای باقری

  11. gidion

    خیلی خوبه نسبت به بقیه مدرس ها که یه کتابخونه یا فرمورک میخوان درس بدن جون ادمو بالا میارن خیلی خوب درس میدن

  12. farshid

    farshid

    کیفیت صدا پائینه،قطع و وصل میشه

  13. سعید

    سعید

    سلام . برای تست pyqt5 رو با روش شما جلو رفتم اما designer نصب نمیشه ! داخل پوشه pyqt5-tools آیکون های designer نیست .

    • آرین

      آرین

      تو ورژن جدید کمی فرق کرده. باید وارد پوشه Qt و بعد پوشه bin بشید.

      • ایمان

        ایمان

        سلام موقع اجرای برنامه دیزاینر ارور بهم میده !!
        this application failed to start because no Qt platform plugin could be initialized. reinstalling the application may fix this problem

  14. AMIN

    AMIN

    سلام
    کیفیت صدا خیلی بده هستش

  15. شفیعی

    شفیعی

    سلام این اموزش مناسب برای نوشتن اپلیکیشن اندروید با زبان پایتون مناسبه ؟ لطفا جواب بدید

  16. A

    A

    سلام . با pyqt میشه برای اندروید هم برنامه ساخت؟

    • امیرعلی طنابیان

      امیرعلی طنابیان

      از فریمورک kivy می تونید استفاده کنید برای این کار

  17. khosravi

    khosravi

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

    • پشتیبان توفیق پور

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

  18. yoosefrostamian

    yoosefrostamian

    به جرات میتونم بگم بهترین منبع آموزشی pyqt5 که به زبان فارسی ایجاد شده هست . ممنون از سایت دانشجویار و آقای باقری

  19. farzad

    farzad

    سلام
    ایا ابزاری مشابه DataGridwview در pyqt داریم؟ و در این مجموعه اموزش داده شده؟

  20. آرمین رحمتی

    آرمین رحمتی

    ایا میشه با pyqt
    هرگونه اسکریپت پایتونی را به گرافیکی تبدیل کرد؟؟
    خیلی مهمه جواب لطفا…

    • فرشاد باقری

      فرشاد باقری مدرس دوره

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

  21. alirez4

    alirez4

    سلام و وقت بخیر
    آیا آموزش به صورت پروژه محور است و در نهایت به یک خروجی مشخض منتج می شود؟

    • فرشاد باقری

      فرشاد باقری مدرس دوره

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

برای دانلود تصویر روی آن کلیک راست و سپس گزینه save image as رو بزنید