您的位置:首页 > 编程语言 > Qt开发

pyqt 弹出对话框

2016-08-02 08:56 309 查看
pyqt的资料还是比较少的,qt的却到处都是,现在学习的流程是去找qt的资料,然后找与之对应的pyqt的代码,真心无奈。

下面要实现是在一行末尾加一个按钮,点击会出现帮助文档。

界面实现如下:



就是最末尾的?,这事实上是一个pushbutton,我把它的text改为了问号,objectname改为了help_mode。

在命令行界面,代码如下:

<span style="font-size:18px;"># -*- coding: utf-8 -*-

"""
Module implementing help.
"""

from PyQt5.QtWidgets import QDialog
from Ui_auto_k2_all import Ui_Dialog #界面信息在文件Ui_auto_k2_all中
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QMessageBox #QmessageBox是弹出框函数
import sys

class help(QDialog, Ui_Dialog):
"""
Class documentation goes here.
"""
def __init__(self, parent=None):
"""
Constructor
QMess
@param parent reference to the parent widget (QWidget)
"""
super(help, self).__init__(parent)
self.setupUi(self)

@pyqtSlot()
def on_help_mode_clicked(self):
"""
Slot documentation goes here.
"""
QMessageBox.information(self, #使用infomation信息框
"Help",
"Two mode can be selected")
# TODO: not implemented yet
if __name__ == "__main__":
app =QtWidgets.QApplication(sys.argv)
form=help()
form.show()
app.exec_()</span>
实现如下:



<span style="font-size:18px;">“”“
备注1:QmessageBox是弹出框函数,是这段代码的关键
在qt中,需要
</span><span style="font-size:18px;"><span><span class="preprocessor">#include <QMessageBox></span><span>
</span></span></span><span style="font-size:18px;">然后,使用方式如下:
<span style="FonT-siZe: 16px"><span style="font-family:'Courier new';">QMessageBox::NoIcon 没有任何图标
QMessageBox::Information 消息图标
QMessageBox::Warning 警告消息
QMessageBox::Critical 严重
<span style="font-family:'Courier new';">例如:
</span></span></span></span><div style="pADDinG-riGHT: 0px; pADDinG-LeFT: 0px; pADDinG-BoTToM: 0px; MArGin: 0px; pADDinG-Top: 0px"><div style="pADDinG-riGHT: 0px; pADDinG-LeFT: 0px; pADDinG-BoTToM: 0px; MArGin: 0px; pADDinG-Top: 0px"><div style="BorDer-riGHT: rgb(204,204,204) 1px solid; pADDinG-riGHT: 4px; BorDer-Top: rgb(204,204,204) 1px solid; pADDinG-LeFT: 4px; pADDinG-BoTToM: 4px; MArGin: 0px; BorDer-LeFT: rgb(204,204,204) 1px solid; WiDTH: 705px; CoLor: rgb(0,0,0); Line-HeiGHT: 16px; pADDinG-Top: 4px; BorDer-BoTToM: rgb(204,204,204) 1px solid; BACKGroUnD-CoLor: rgb(238,238,238)"><span style="FonT-siZe: 16px"><span style="font-family:'Courier new';"><img style="pADDinG-riGHT: 0px; pADDinG-LeFT: 0px; pADDinG-BoTToM: 0px; MArGin: 0px; VerTiCAL-ALiGn: top; BorDer-Top-sTYLe: none; pADDinG-Top: 0px; BorDer-riGHT-sTYLe: none; BorDer-LeFT-sTYLe: none; BorDer-BoTToM-sTYLe: none" alt="" src="http://devbean.blog.51cto.com/images/editer/InBlock.gif" title="QMessageBox" align="top" />QMessageBox::information(<span style="font-family:'Courier new';">this</span>, tr(<wbr></wbr></span></span><span style="color:#800000;pADDinG-riGHT: 0px; pADDinG-LeFT: 0px; pADDinG-BoTToM: 0px; MArGin: 0px; pADDinG-Top: 0px"><span style="FonT-siZe: 16px"><span style="font-family:'Courier new';">"Title")</span></span></span><span style="FonT-siZe: 16px"><span style="font-family:'Courier new';">, tr(<wbr></wbr></span></span><span style="color:#800000;pADDinG-riGHT: 0px; pADDinG-LeFT: 0px; pADDinG-BoTToM: 0px; MArGin: 0px; pADDinG-Top: 0px"><span style="FonT-siZe: 16px"><span style="font-family:'Courier new';">"Content")</span></span></span><span style="FonT-siZe: 16px"><span style="font-family:'Courier new';">,QMessageBox::Yes | QMessageBox::No,QMessageBox::Yes);</span></span></div></div></div>参考:http://blog.sina.com.cn/s/blog_9d16de8101010r43.html
"""
"""
备注2:<span style="font-size:18px;">QmessageBox</span>在 pyqt4中,存放在QtQui的类中,需要这样import<span style="font-size:18px;"></span><pre name="code" class="python"><span style="font-size:18px;"></span><pre name="code" class="python">from PyQt4.QtGui import <span style="font-size:18px;">QMessageBox</span>
<span style="font-size:18px;">def OnInfoButton( self ):
QMessageBox.information( self, "Pyqt", "information" )</span>


”“”

备注3:
<span style="font-size:18px;">QmessageBox</span>在 pyqt5中,存放在QtWidget的类中,需要这样import
from PyQt5.QtWidgets import <span style="font-size:18px;">QMessageBox</span>
<span style="font-size:18px;">def OnInfoButton( self ):
QMessageBox.information( self, "Pyqt", "information" )

</span>

 

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: