آموزش PyQt5

صفحه نخست
 » 
برنامه نویسی ویندوز
 » 
آموزش پایتون
 » 
آموزش PyQt5
۱۰,۱۵۳ بازدید
۲۱ نظر

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

به زودی

به زودی

به زودی

ذخیره سازی: روی تصویر کلیک راستی و گزینه Save image as... رو بزنید.

پلیر حرفه ای دانشجویار با امکانات برای یادگیری

میانبرهای پخش کننده

  • m: قطع و وصل صدا
  • h: راهنمای پخش کننده
  • Home: ابتدای ویدئو
  • End: انتهای ویدئو
  • space: توقف/پخش
  • جهت جلو/عقب: 10 ثانیه به جلو/عقب
  • اعداد 1 تا 9: موقعیت های 10 تا 90 درصد ویدئو
-:-
۰۰:۰۰
۰۰:۰۰
1x
  • 0.25x
  • 0.5x
  • 0.75x
  • 1.0x
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

لیست پخش دوره

  • ۱

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

    ۲۸:۲۶

  • ۲

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

    ۲۵:۵۸

  • ۳

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

    ۰۱:۰۴:۲۸

  • ۴

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

    ۵۰:۲۱

  • ۵

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

    ۳۵:۴۰

  • ۶

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

    ۳۷:۴۱

  • ۷

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

    ۵۹:۴۲

  • ۸

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

    ۴۹:۴۷

  • ۹

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

    ۳۹:۴۳

  • ۱۰

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

    ۴۱:۴۸

  • ۱۱

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

    ۵۹:۳۵

  • ۱۲

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

    ۰۱:۰۰:۴۵

  • ۱۳

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

    ۰۱:۱۰:۲۶

  • ۱۴

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

    ۳۵:۱۶

  • ۱۵

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

آموزش PyQt5

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

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

 

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

 

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

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

در این بخش ابتدا به تعریف PyQt می‌پردازیم و در مورد شرکت توسعه‌دهنده آن صحبت می‌کنیم. سپس به معرفی انواع ماژول‌های تشکیل‌دهنده PyQt5 و تفاوت نسخه ۴ و ۵ 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 قرار دارد، می‌پردازیم. با حل ۳ مثال در مورد کلاس‌های ذکرشده مبحث مربوطه را خاتمه داده و مباحثشی گرایی در داخل PyQt5 را شروع می‌کنیم. هدف از نوشتن برنامه با رعایت اصولشی گرایی را هم ذکر می‌کنیم.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

۱-Event source

۲-Event object

۳-Event target

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

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

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

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

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

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

۱-Input Dialog

۲-Font Dialog

۳-File Dialog

۴-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)

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

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

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

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

نظرات کاربران

۲۱
  • salmani.h62
    دوشنبه ۳۱ شهریور ۱۳۹۹ - ۲۱:۴۲

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

  • زهرا نوری
    یکشنبه ۱۱ خرداد ۱۳۹۹ - ۰۰:۵۵

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

  • آرین
    چهارشنبه ۷ خرداد ۱۳۹۹ - ۰۲:۰۴

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

  • sa
    یکشنبه ۱۸ اسفند ۱۳۹۸ - ۲۳:۳۴

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

  • mohammad23
    پنج شنبه ۱۵ اسفند ۱۳۹۸ - ۱۰:۳۸

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

  • gidion
    جمعه ۲۵ بهمن ۱۳۹۸ - ۱۳:۳۶

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

  • farshid
    دوشنبه ۱۸ آذر ۱۳۹۸ - ۰۰:۲۹

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

  • سعید
    دوشنبه ۱۵ مهر ۱۳۹۸ - ۱۱:۲۶

    سلام . برای تست 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

  • AMIN
    یکشنبه ۱۴ مهر ۱۳۹۸ - ۰۰:۱۶

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

  • شفیعی
    دوشنبه ۸ مهر ۱۳۹۸ - ۲۲:۵۱

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

  • A
    شنبه ۲ شهریور ۱۳۹۸ - ۲۱:۵۷

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

  • khosravi
    شنبه ۸ تیر ۱۳۹۸ - ۱۸:۵۸

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

    • پشتیبان توفیق پور
      یکشنبه ۹ تیر ۱۳۹۸ - ۰۸:۴۰

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

  • yoosefrostamian
    دوشنبه ۳ تیر ۱۳۹۸ - ۲۰:۱۸

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

  • farzad
    جمعه ۲۴ اسفند ۱۳۹۷ - ۱۴:۵۴

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

  • آرمین رحمتی
    یکشنبه ۴ آذر ۱۳۹۷ - ۰۲:۵۴

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

    • فرشاد باقری
      سه شنبه ۶ آذر ۱۳۹۷ - ۲۳:۵۱

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

  • alirez4
    یکشنبه ۲۷ آبان ۱۳۹۷ - ۱۷:۳۲

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

    • فرشاد باقری
      پنج شنبه ۱ آذر ۱۳۹۷ - ۰۱:۴۱

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

اطلاعات دوره

  • مدرس: فرشاد باقری
  • تعداد قسمت: ۱۴ قسمت
  • مدت زمان آموزش: ۱۰:۵۹:۳۶
  • حجم دوره: ۱.۵۸ گیگابایت
  • هزینه دوره: ۳۹,۰۰۰تومان

راهنمای خرید دانشجویان افغانستان

مدرس دوره

فرشاد باقری

فرشاد باقری

دانشجوی مهندسی نرم افزار هستم و علاقمند به زمینه ب + بیشتر

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

پشتیبانی

دانشجویار در طول 24 ساعت شبانه روز آماده پاسخگویی به سوالات شما می باشد.

  • تماس با شماره تلفن ۰۵۶۳۲۰۱۲۰۱۹
  • ارسال تیکت پشتیبانی از طریق این لینک
  • گفتگوی آنلاین از طریق چت وبسایت
  • ارسال پیام به آیدی تلگرام @daneshjooyar_support724
دانشجویار نماد اعتماد به دانشجویار مجوز نشر دیجیتال لوگو شرکت به پرداخت ملت logo-samandehi مجوز سازمان فنی حرفه ای کشور