窗口操作二

"""
無邊框
頂層窗口的特定操作一
"""
from PyQt5.Qt import *
import sys

app = QApplication(sys.argv)
# 創(chuàng)建控件
window = QWidget()
# 設(shè)置控件
window.setWindowTitle('窗口特定操作案例')
# 設(shè)置大小
window.resize(500, 500)

lable = QLabel(window)
# 設(shè)置無標(biāo)題欄方法1
# window = QWidget(flags=Qt.FramelessWindowHint)
# 設(shè)置無標(biāo)題欄方法2
window = QWidget()
window.setWindowFlags(Qt.FramelessWindowHint)
window.setWindowOpacity(0.9)
window.resize(500, 500)

# 規(guī)定死大小
top_margin = 10
btn_w = 80
btn_h = 40

# 添加三個(gè)子控件 - 窗口右上角
close_btn = QPushButton(window)
close_btn.setText("關(guān)閉")
close_btn.resize(btn_w, btn_h)

# 位置
# close_btn_w = btn_w
window_w = window.width()
close_btn_x = window_w - btn_w
close_btn_y = top_margin
close_btn.move(close_btn_x, close_btn_y)

# 最大標(biāo)簽
max_btn = QPushButton(window)
max_btn.setText("最大化")
max_btn.resize(btn_w, btn_h)

# 位置
max_btn_x = close_btn_x - btn_w
max_btn_y = top_margin
max_btn.move(max_btn_x, max_btn_y)

min_btn = QPushButton(window)
min_btn.setText("最小化")
min_btn.resize(btn_w, btn_h)

min_btn_x = max_btn_x - btn_w
min_btn_y = top_margin
min_btn.move(min_btn_x, min_btn_y)

# 測(cè)試關(guān)閉
# def close():
#     window.close()


close_btn.pressed.connect(window.close)


# 測(cè)試 -控制最大化按鈕變大/恢復(fù)功能
def max_normal():
    if window.isMaximized():
        window.showNormal()
        max_btn.setText('最大化')
    else:
        window.showMaximized()
        max_btn.setText('恢復(fù)')


max_btn.pressed.connect(max_normal)
min_btn.pressed.connect(window.showMinimized)

# 展示控件
window.show()
# 退出
sys.exit(app.exec_())

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容