中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

畢業(yè)設(shè)計網(wǎng)站開發(fā)web網(wǎng)頁制作成品

畢業(yè)設(shè)計網(wǎng)站開發(fā),web網(wǎng)頁制作成品,清豐網(wǎng)站建設(shè)價格,vscode網(wǎng)頁制作教程本篇來介紹使用python中是Qt功能包,設(shè)置一個簡易的多界面切換框架,實現(xiàn)主界面和多個子界面直接的切換顯示。 1 主界面 設(shè)計的Demo主界面如下,主界面上有兩個按鈕圖標,點擊即可切換到對應(yīng)的功能界面中,進入子界面后&a…

本篇來介紹使用python中是Qt功能包,設(shè)置一個簡易的多界面切換框架,實現(xiàn)主界面和多個子界面直接的切換顯示。

1 主界面

設(shè)計的Demo主界面如下,主界面上有兩個按鈕圖標,點擊即可切換到對應(yīng)的功能界面中,進入子界面后,通過返回按鈕,又可回到主界面。

這里以兩個按鈕圖標示例,實際使用中,可繼續(xù)擴展。

1.1 布局

如下是本Demo的主界面的布局代碼,實際使用時,可根據(jù)自己的需要進行修改。

homeUI.py

from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
from uiDef import *
from musicPlayer import MusicPlayer
from videoPlayer import VideoPlayerclass mainWindow(QMainWindow):def __init__(self):super().__init__()self.main_UI()self.button_UI()def main_UI(self):self.setFixedSize(WIN_WIDTH, WIN_HEIGHT)self.setWindowTitle("主界面")self.mainWight = QWidget()self.mainLayout = QVBoxLayout()self.mainWight.setLayout(self.mainLayout)self.setCentralWidget(self.mainWight)def button_UI(self):# 各個APP啟動按鈕# <<<音樂>>>self.musicAppBtn = QPushButton(self)self.musicAppBtn.setStyleSheet("QPushButton{border-image: url(resource/app_music.png)}")self.musicAppBtn.setFixedSize(48, 48)self.musicAppLabel = QLabel(self)self.musicAppLabel.setText("音樂")self.musicAppLabel.setAlignment(Qt.AlignCenter)self.vboxMusicApp = QVBoxLayout()self.vboxMusicApp.addWidget(self.musicAppBtn)self.vboxMusicApp.addWidget(self.musicAppLabel)# <<<視頻>>>self.videoAppBtn = QPushButton(self)self.videoAppBtn.setStyleSheet("QPushButton{border-image: url(resource/app_video.png)}")self.videoAppBtn.setFixedSize(48, 48)self.videoAppLabel = QLabel(self)self.videoAppLabel.setText("視頻")self.videoAppLabel.setAlignment(Qt.AlignCenter)self.vboxVideoApp = QVBoxLayout()self.vboxVideoApp.addWidget(self.videoAppBtn)self.vboxVideoApp.addWidget(self.videoAppLabel)# 布局self.vboxAppBtnLine1 = QHBoxLayout()self.vboxAppBtnLine1.addStretch(1)self.vboxAppBtnLine1.addLayout(self.vboxMusicApp)self.vboxAppBtnLine1.addStretch(1)self.vboxAppBtnLine1.addLayout(self.vboxVideoApp)self.vboxAppBtnLine1.addStretch(1)self.mainLayout.addStretch(1)self.mainLayout.addLayout(self.vboxAppBtnLine1)self.mainLayout.addStretch(1)

這里使用QPushButton實現(xiàn)按鈕功能:

  • 通過setStyleSheet方法,設(shè)置按鈕圖標的顯示
  • 通過QLabel設(shè)置圖標對應(yīng)的文字說明,并通過setAlignment方法設(shè)置居中對齊
  • 按鈕圖標與文字,通過QVBoxLayout進行垂直布局

多個QPushButton通過QHBoxLayoutt進行水平布局

1.2 進入子界面

界面切換的關(guān)鍵,是通過Qt的信號和槽機制,當圖標按鈕點擊后,啟動對應(yīng)的子功能模塊,并關(guān)閉主頁面。

代碼如下:

class mainWindow(QMainWindow):      def button_UI(self):# 省略UI布局...# 信號和槽self.musicAppBtn.clicked.connect(self.startMusicApp)self.musicAppBtn.clicked.connect(self.close) self.videoAppBtn.clicked.connect(self.startVideoApp)self.videoAppBtn.clicked.connect(self.close) def startMusicApp(self):print("startMusicApp...")self.w1 = MusicPlayer()self.w1.show()def startVideoApp(self):print("startVideoApp...")self.w2 = VideoPlayer()self.w2.show()

這里的startMusicApp和startVideoApp就是分別啟動音樂播放子界面和視頻播放子界面。

下面來介紹使用pyQt設(shè)計子界面。

2 子界面

設(shè)計的Demo子界面如下,點擊“返回主界面”按鈕,可以返回到剛才的主界面。

2.1 布局

如下是本Demo的音樂播放子界面的布局代碼,實際使用時,可根據(jù)自己的需要進行修改。

musicPlayer.py

from PyQt5.QtWidgets import QWidget,QHBoxLayout,QVBoxLayout,QPushButton, QLabel, QApplication
from PyQt5.QtCore import Qt
import os, time, sys
from uiDef import *class MusicPlayer(QWidget):def __init__(self):super().__init__()self.showLabel = QLabel(self)self.showLabel.setText("音樂子界面測試")self.showLabel.setAlignment(Qt.AlignCenter)#返回主界面self.homeBtn = QPushButton("返回主界面")#整體布局self.vboxMain = QVBoxLayout()self.vboxMain.addWidget(self.showLabel)self.vboxMain.addWidget(self.homeBtn)self.setLayout(self.vboxMain)self.initUI()# 初始化界面def initUI(self):self.resize(WIN_WIDTH, WIN_HEIGHT)self.setWindowTitle('音樂子界面')self.show()

這里主要用到了QLabel和QPushButton兩種控件,并通過QVBoxLayout進行垂直布局。

2.2 返回主界面

返回主界面的關(guān)鍵,同樣是通過Qt的信號和槽機制,當點擊“返回主界面”后,啟動主界面功能模塊,并關(guān)閉當前頁面。

代碼如下:

class MusicPlayer(QWidget):def __init__(self):# 省略UI布局...#信號與槽self.homeBtn.clicked.connect(self.returnHome)self.homeBtn.clicked.connect(self.close)# 返回主頁def returnHome(self):print("return home")from homeUI import mainWindowself.homeWindow = mainWindow()self.homeWindow.show()

2.3 其它子界面

其它子界面的設(shè)計,可參考剛才的音樂播放子界面接口,主要是信號和槽那部分的功能保持不變,實現(xiàn)界面的切換。

其它功能根據(jù)自己的實際需要進行修改即可。

例如可以參考音樂播放子界面,再設(shè)計一個視頻播放子界面。

from PyQt5.QtWidgets import QWidget,QHBoxLayout,QVBoxLayout,QPushButton, QLabel, QApplication
from PyQt5.QtCore import Qt
import os, time, sys
from uiDef import *class VideoPlayer(QWidget):def __init__(self):super().__init__()self.showLabel = QLabel(self)self.showLabel.setText("視頻子界面測試")self.showLabel.setAlignment(Qt.AlignCenter)#返回主界面self.homeBtn = QPushButton("返回主界面")#整體布局self.vboxMain = QVBoxLayout()self.vboxMain.addWidget(self.showLabel)self.vboxMain.addWidget(self.homeBtn)self.setLayout(self.vboxMain)#信號與槽self.homeBtn.clicked.connect(self.returnHome)self.homeBtn.clicked.connect(self.close)self.initUI()# 初始化界面def initUI(self):self.resize(WIN_WIDTH, WIN_HEIGHT)self.setWindowTitle('視頻子界面')self.show()# 返回主頁def returnHome(self):print("return home")from homeUI import mainWindowself.homeWindow = mainWindow()self.homeWindow.show()

3 演示

實際運行Demo程序,效果如下,可以實現(xiàn)主界面和子界面間的互相切換顯示:(待補充)

4 總結(jié)

本篇介紹了使用pyQt,設(shè)置一個簡易的多界面切換框架,講解了其切換的基本原理,并進行了實際效果的展示。

http://www.risenshineclean.com/news/51062.html

相關(guān)文章:

  • 查企業(yè)數(shù)據(jù)要去什么網(wǎng)站12345瀏覽器
  • 網(wǎng)站備案icp備案輿情分析網(wǎng)站免費
  • 廣元網(wǎng)站建設(shè)專業(yè)人員網(wǎng)盤app下載
  • 泰國浪琴手表網(wǎng)站新人學(xué)會seo
  • 網(wǎng)站移動端做pc端的301跳轉(zhuǎn)windows優(yōu)化大師有哪些功能
  • java動態(tài)web網(wǎng)站開發(fā)軟文營銷案例分析
  • 杭州做網(wǎng)站制作手機怎么搭建屬于自己的網(wǎng)站
  • 天津營銷型網(wǎng)站建設(shè)費用友情鏈接的英文
  • 江門網(wǎng)站建設(shè)報價百度推廣熱線電話
  • 網(wǎng)站建設(shè)如何制作教程北京網(wǎng)站制作公司
  • 專業(yè)網(wǎng)站制作團隊電銷名單渠道在哪里找
  • 江蘇省城鄉(xiāng)建設(shè)局網(wǎng)站首頁seo網(wǎng)站查詢
  • 網(wǎng)站建設(shè)服務(wù)項目表格百度首頁推廣廣告怎么做
  • 百家號和網(wǎng)站同步做職業(yè)培訓(xùn)網(wǎng)絡(luò)平臺
  • 網(wǎng)站銷售都怎么做的百度收錄是什么意思
  • 企業(yè)網(wǎng)站 合同谷歌瀏覽器官網(wǎng)
  • 云南做網(wǎng)站泰安網(wǎng)站建設(shè)優(yōu)化
  • 網(wǎng)易云播放器做網(wǎng)站播放編程培訓(xùn)班學(xué)費一般多少錢
  • 網(wǎng)站做3年3年包括什么b站2023年免費入口
  • 專業(yè)做網(wǎng)站優(yōu)化排名怎么推廣軟件
  • 電影里的做視頻在線觀看網(wǎng)站無貨源網(wǎng)店怎么開
  • 展覽展示搭建設(shè)計化工seo顧問
  • 設(shè)計必備網(wǎng)站網(wǎng)絡(luò)推廣營銷方案免費
  • 東莞做網(wǎng)站哪家最好網(wǎng)站模板建站公司
  • 谷歌網(wǎng)站統(tǒng)計壹起航網(wǎng)絡(luò)推廣的目標
  • 公司網(wǎng)站建設(shè)合同書網(wǎng)絡(luò)推廣網(wǎng)站公司
  • 國家高新技術(shù)企業(yè)公示名單成都seo網(wǎng)站qq
  • 合肥 網(wǎng)站建設(shè)自媒體培訓(xùn)
  • 全市政府網(wǎng)站建設(shè)管理的講話seo推廣效果怎么樣
  • 做業(yè)務(wù)員找數(shù)據(jù)的網(wǎng)站網(wǎng)絡(luò)推廣app是違法的嗎