28 มีนาคม 2558

Published มีนาคม 28, 2558 by with 0 comment

สร้าง GUI ด้วย PySide : กำหนดขนาดของหน้าต่าง

สวัสดีผู้อ่านทุกท่านครับ บทความนี้จะพาผู้อ่านไปกำหนดขนาดของหน้าต่างในการสร้าง GUI ด้วย PySide กันครับ


กำหนดขนาดของหน้าต่าง
ต้องกำหนดขนาดก่อนใช้ QWidget.show

QWidget.resize(ขนาดตามพิกัดตามแกน x , ขนาดพิกัดตามแกน y)

การกำหนดขนาดของหน้าต่างในคำสั่ง QWidget.show


แสดงหน้าต่าง
ตามไลบรารีสามารถใช้คำสั่ง QWidget.show ได้เลย แต่ถ้าต้องการปรับแต่งมากกว่านั้น สามารถทำได้ดังนี้ครับ
เต็มหน้าจอ

QWidget.showFullScreen()

เต็มหน้าจอตามขนาดสูงสุดของหน้าต่าง

QWidget.showMaximized()

โชว์ตามแบบปกติ
หน้าต่าง GUI จะเป็นไปตามขนาดที่เรากำหนดด้วยคำสั่ง QWidget.resize() ครับ หากเราไม่ได้กำหนดค่า QWidget.resize() อาจจะทำให้โปรแกรมแสดงหน้าต่างไม่ถูกต้องครับ

QWidget.showNormal()

แสดงหน้าต่างตามขนาด QWidget.resize()
โดยจะแสดงตามค่าขนาด QWidget.resize() หรือค่าต่ำสุดที่กำหนดไว้

QWidget.showMinimized()







ตัวอย่าง

import sys
from PySide.QtCore import *
from PySide.QtGui import *

app = QApplication(sys.argv)

win = QWidget()

layout = QVBoxLayout() #ดึง QVBoxLayout() มาใช้งานเพิ่มให้เราสามารถดึงวัตถุมารวมกันได้
win.setLayout(layout) #กำหนดให้ตัวแปร win ชึ่งเป็น QWidget ดึงตัวแปรที่อยู่ใน layout มาแสดง

label = QLabel("Hello World") #กำหนดข้อความ
layout.addWidget(label) #เพิ่มดึงตัวแปร label เข้ามา

win.resize(320, 240) #กำหนดขนาดของหน้าต่างโปรแกรม
win.setWindowTitle("Hello, World!") #กำหนดชื่อตรงหัวโปรแกรม
win.show() #แสดงโดยใช้คำสั่ง QWidget.show

app.exec_()


ผลลัพธ์

หากเราเปลี่ยนจาก QWidget.show เป็น QWidget.showFullScreen() จะต้องเปลี่ยนตรง

win.show()

ไปเป็น

win.showFullScreen()

ผลลัพธ์

ภาพหน้าจอ (397)
 จะเต็มหน้าต่างคอมพิวเตอร์เลยครับ
หากเปลี่ยนเป็น QWidget.showMaximized()
จะต้องเปลี่ยนตรง

win.show()

ไปเป็น

win.showMaximized()

ผลลัพธ์
สร้าง GUI ด้วย PySide : กำหนดขนาดของหน้าต่าง
จะเต็มแค่ในกรอบสูงสุดของระบบปฎิบัติการนั้น ๆ ครับ ส่วนคำสั่งอื่น ๆ ลองใช้กันดูนะครับ

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)