بیایید اولین برنامه خود با یک رابط کاربری گرافیکی را بنویسیم! و با کلیت برنامه نویسی واسط کاربری گرافیکی یا همان GUI بیشتر آشنا شویم.
حال در ادامه عنوان پنجره ، آیکن ، عرض و ارتفاع و موقعیت پنجره را تعیین میکنیم:
تفکر حاکم بر طراحی PyQt بر این اساس است که :
- ایجاد یک و تنها یک اینستنس از کلاس اصلی PyQt GUI است ( QApplication )
- ایجاد پنجره اصلی برنامه
- نمایش پنجره اصلی
- به راه انداختن اینستنس مرحله اول
یک نمونه کد را بررسی میکنیم:
import sys from PyQt4 import QtGui def main(): app = QtGui.QApplication(sys.argv) # instance az class QAplication my_window = QtGui.QMainWindow() # instance az class QMainWidow my_window.show() # nemayesh dadan an window app.exec_() # be rah andakhtan GUI if __name__ == "__main__":main()
خروجی کد:
حال در ادامه عنوان پنجره ، آیکن ، عرض و ارتفاع و موقعیت پنجره را تعیین میکنیم:
- عنوان پنجره:
my_window.setWindowTitle("Python In Depth")
- آیکن پنجره:
برای قرار دادن تصویری به عنوان آیکن باید از تصویر یک اینستنس از کلاس QIcon بسازیم و سپس به عنوان آیکن پنجره معرفی اش کنیم:
window_icon = QtGui.QIcon("pythonindepth.png") # Adress file ra vared mikonim
my_window.setWindowIcon(window_icon)
- تعیین عرض و ارتفاع پنجره:
my_window.resize(300,200) # arz va ertefa bar hasbe pixel
- تعیین موقعیت پنجره:
my_window.move(400,200) # arz va tool bar hasbe pixel
با این تغییرات کد بدین صورت تبدیل میشود:
import sys
from PyQt4 import QtGui
def main():
app = QtGui.QApplication(sys.argv)
my_window = QtGui.QMainWindow()
my_window.setWindowTitle("Python In Depth")
window_icon = QtGui.QIcon("pythonindepth.png") # Adress file ra vared mikonim
my_window.setWindowIcon(window_icon)
my_window.resize(300,200) # arz va ertefa bar hasbe pixel
my_window.move(400,200) # arz va tool bar hasbe pixel
my_window.show()
app.exec_()
if __name__ == "__main__":
main()
و خروجی آن:
بسیار خوب!
علی الظاهر بکاربستن PyQt آسان است! و کد هایش قابل فهمند.
در بخش دوم با سیاستی متفاوت و اصولی به ادامه یادگیری میپردازیم :-)