亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

pyqt5——對(duì)話框

Me_Kun / 3021人閱讀

摘要:這個(gè)示例有一個(gè)按鈕和一個(gè)輸入框,點(diǎn)擊按鈕顯示對(duì)話框,輸入的文本會(huì)顯示在輸入框里。把得到的字符串放到輸入框里。我們創(chuàng)建了一個(gè)有一個(gè)按鈕和一個(gè)標(biāo)簽的的對(duì)話框,我們可以使用這個(gè)功能修改字體樣式。

對(duì)話框

對(duì)話框是一個(gè)現(xiàn)代GUI應(yīng)用不可或缺的一部分。對(duì)話是兩個(gè)人之間的交流,對(duì)話框就是人與電腦之間的對(duì)話。對(duì)話框用來(lái)輸入數(shù)據(jù),修改數(shù)據(jù),修改應(yīng)用設(shè)置等等。

輸入文字

QInputDialog提供了一個(gè)簡(jiǎn)單方便的對(duì)話框,可以輸入字符串,數(shù)字或列表。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial 

In this example, we receive data from
a QInputDialog dialog. 

Aauthor: Jan Bodnar
Website: zetcode.com 
Last edited: August 2017
"""

from PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit, 
    QInputDialog, QApplication)
import sys

class Example(QWidget):

    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):

        self.btn = QPushButton("Dialog", self)
        self.btn.move(20, 20)
        self.btn.clicked.connect(self.showDialog)
        
        self.le = QLineEdit(self)
        self.le.move(130, 22)
        
        self.setGeometry(300, 300, 290, 150)
        self.setWindowTitle("Input dialog")
        self.show()
        
        
    def showDialog(self):
        
        text, ok = QInputDialog.getText(self, "Input Dialog", 
            "Enter your name:")
        
        if ok:
            self.le.setText(str(text))
        
        
if __name__ == "__main__":
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

這個(gè)示例有一個(gè)按鈕和一個(gè)輸入框,點(diǎn)擊按鈕顯示對(duì)話框,輸入的文本會(huì)顯示在輸入框里。

text, ok = QInputDialog.getText(self, "Input Dialog",
    "Enter your name:")

這是顯示一個(gè)輸入框的代碼。第一個(gè)參數(shù)是輸入框的標(biāo)題,第二個(gè)參數(shù)是輸入框的占位符。對(duì)話框返回輸入內(nèi)容和一個(gè)布爾值,如果點(diǎn)擊的是OK按鈕,布爾值就返回True。

if ok:
    self.le.setText(str(text))

把得到的字符串放到輸入框里。

程序展示:

選取顏色

QColorDialog提供顏色的選擇。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial 

In this example, we select a color value
from the QColorDialog and change the background
color of a QFrame widget. 

Author: Jan Bodnar
Website: zetcode.com 
Last edited: August 2017
"""

from PyQt5.QtWidgets import (QWidget, QPushButton, QFrame, 
    QColorDialog, QApplication)
from PyQt5.QtGui import QColor
import sys

class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        col = QColor(0, 0, 0) 

        self.btn = QPushButton("Dialog", self)
        self.btn.move(20, 20)

        self.btn.clicked.connect(self.showDialog)

        self.frm = QFrame(self)
        self.frm.setStyleSheet("QWidget { background-color: %s }" 
            % col.name())
        self.frm.setGeometry(130, 22, 100, 100)            
        
        self.setGeometry(300, 300, 250, 180)
        self.setWindowTitle("Color dialog")
        self.show()
        
        
    def showDialog(self):
      
        col = QColorDialog.getColor()

        if col.isValid():
            self.frm.setStyleSheet("QWidget { background-color: %s }"
                % col.name())
            
        
if __name__ == "__main__":
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

例子里有一個(gè)按鈕和一個(gè)QFrame,默認(rèn)的背景顏色為黑色,我們可以使用QColorDialog改變背景顏色。

col = QColor(0, 0, 0)

初始化QtGui.QFrame的背景顏色。

col = QColorDialog.getColor()

彈出一個(gè)QColorDialog對(duì)話框。

if col.isValid():
    self.frm.setStyleSheet("QWidget { background-color: %s }"
        % col.name())

我們可以預(yù)覽顏色,如果點(diǎn)擊取消按鈕,沒(méi)有顏色值返回,如果顏色是我們想要的,就從取色框里選擇這個(gè)顏色。

程序展示:

選擇字體

QFontDialog能做字體的選擇。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial 

In this example, we select a font name
and change the font of a label. 

Author: Jan Bodnar
Website: zetcode.com 
Last edited: August 2017
"""

from PyQt5.QtWidgets import (QWidget, QVBoxLayout, QPushButton, 
    QSizePolicy, QLabel, QFontDialog, QApplication)
import sys

class Example(QWidget):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        vbox = QVBoxLayout()

        btn = QPushButton("Dialog", self)
        btn.setSizePolicy(QSizePolicy.Fixed,
            QSizePolicy.Fixed)
        
        btn.move(20, 20)

        vbox.addWidget(btn)

        btn.clicked.connect(self.showDialog)
        
        self.lbl = QLabel("Knowledge only matters", self)
        self.lbl.move(130, 20)

        vbox.addWidget(self.lbl)
        self.setLayout(vbox)          
        
        self.setGeometry(300, 300, 250, 180)
        self.setWindowTitle("Font dialog")
        self.show()
        
        
    def showDialog(self):

        font, ok = QFontDialog.getFont()
        if ok:
            self.lbl.setFont(font)
        
        
if __name__ == "__main__":
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

我們創(chuàng)建了一個(gè)有一個(gè)按鈕和一個(gè)標(biāo)簽的QFontDialog的對(duì)話框,我們可以使用這個(gè)功能修改字體樣式。

font, ok = QFontDialog.getFont()

彈出一個(gè)字體選擇對(duì)話框。getFont()方法返回一個(gè)字體名稱和狀態(tài)信息。狀態(tài)信息有OK和其他兩種。

if ok:
    self.label.setFont(font)

如果點(diǎn)擊OK,標(biāo)簽的字體就會(huì)隨之更改。

程序展示:

選擇文件

QFileDialog給用戶提供文件或者文件夾選擇的功能。能打開(kāi)和保存文件。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
ZetCode PyQt5 tutorial 

In this example, we select a file with a
QFileDialog and display its contents
in a QTextEdit.

Author: Jan Bodnar
Website: zetcode.com 
Last edited: August 2017
"""

from PyQt5.QtWidgets import (QMainWindow, QTextEdit, 
    QAction, QFileDialog, QApplication)
from PyQt5.QtGui import QIcon
import sys

class Example(QMainWindow):
    
    def __init__(self):
        super().__init__()
        
        self.initUI()
        
        
    def initUI(self):      

        self.textEdit = QTextEdit()
        self.setCentralWidget(self.textEdit)
        self.statusBar()

        openFile = QAction(QIcon("open.png"), "Open", self)
        openFile.setShortcut("Ctrl+O")
        openFile.setStatusTip("Open new File")
        openFile.triggered.connect(self.showDialog)

        menubar = self.menuBar()
        fileMenu = menubar.addMenu("&File")
        fileMenu.addAction(openFile)       
        
        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle("File dialog")
        self.show()
        
        
    def showDialog(self):

        fname = QFileDialog.getOpenFileName(self, "Open file", "/home")

        if fname[0]:
            f = open(fname[0], "r")

            with f:
                data = f.read()
                self.textEdit.setText(data)        
        
if __name__ == "__main__":
    
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

本例中有一個(gè)菜單欄,一個(gè)置中的文本編輯框,一個(gè)狀態(tài)欄。點(diǎn)擊菜單欄選項(xiàng)會(huì)彈出一個(gè)QtGui.QFileDialog對(duì)話框,在這個(gè)對(duì)話框里,你能選擇文件,然后文件的內(nèi)容就會(huì)顯示在文本編輯框里。

class Example(QMainWindow):

    def __init__(self):
        super().__init__()

        self.initUI()

這里設(shè)置了一個(gè)文本編輯框,文本編輯框是基于QMainWindow組件的。

fname = QFileDialog.getOpenFileName(self, "Open file", "/home")

彈出QFileDialog窗口。getOpenFileName()方法的第一個(gè)參數(shù)是說(shuō)明文字,第二個(gè)參數(shù)是默認(rèn)打開(kāi)的文件夾路徑。默認(rèn)情況下顯示所有類型的文件。

if fname[0]:
    f = open(fname[0], "r")

    with f:
        data = f.read()
        self.textEdit.setText(data)

讀取選中的文件,并顯示在文本編輯框內(nèi)(但是打開(kāi)HTML文件時(shí),是渲染后的結(jié)果,汗)。

程序展示:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/42984.html

相關(guān)文章

  • Python 小白的 PyQt5 項(xiàng)目實(shí)戰(zhàn)(1)安裝與環(huán)境配置

    摘要:工具可以直接使用方式安裝和的環(huán)境配置使用集成開(kāi)發(fā)工具的小白,在安裝庫(kù)以后,還要對(duì)和進(jìn)行環(huán)境配置,將其集成到中。如果小白的或安裝在其他路徑下,則從對(duì)應(yīng)的目錄找到,或者在資源管理器中搜索文件找到安裝路徑。 ...

    Chao 評(píng)論0 收藏0
  • hello world!——pyQT

    摘要:控件是一個(gè)用戶界面的基本控件,它提供了基本的應(yīng)用構(gòu)造器。默認(rèn)情況下,構(gòu)造器是沒(méi)有父級(jí)的,沒(méi)有父級(jí)的構(gòu)造器被稱為窗口。這就意味著,我們調(diào)用了兩個(gè)構(gòu)造器,一個(gè)是這個(gè)類本身的,一個(gè)是這個(gè)類繼承的。構(gòu)造器方法返回父級(jí)的對(duì)象。 本章學(xué)習(xí)Qt的基本功能 例1,簡(jiǎn)單的窗口 這個(gè)簡(jiǎn)單的小例子展示的是一個(gè)小窗口。但是我們可以在這個(gè)小窗口上面做很多事情,改變大小,最大化,最小化等,這需要很多代碼才能實(shí)現(xiàn)。...

    xumenger 評(píng)論0 收藏0
  • PyQt5+eric6之旅(二) - qt designer基本操作

    摘要:實(shí)時(shí)在文本框顯示內(nèi)容引入這個(gè)函數(shù)綁定定時(shí)器自動(dòng)執(zhí)行在類中定義一個(gè)定時(shí)器并在構(gòu)造函數(shù)中設(shè)置啟動(dòng)及其信號(hào)和槽設(shè)置計(jì)時(shí)間隔并啟動(dòng)計(jì)時(shí)結(jié)束調(diào)用方法注意不要加引入這個(gè)參考 qt designer使用 開(kāi)始 新建項(xiàng)目(eric6 項(xiàng)目) 新建窗體(eric6 窗體) 編輯界面(轉(zhuǎn)到qt designer) 保存 編譯窗體(轉(zhuǎn)到eric6 窗體) 運(yùn)行(查看頁(yè)面效果) 頁(yè)面縮放效果(qt d...

    2bdenny 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<