zoukankan      html  css  js  c++  java
  • PySide 简易教程<三>-------动手写起来

    到目前为止,已经接触的Pyside的界面元素有如下几个:QWidget、QPushButton、QLabel。本次再介绍两个tooltip和messagebox。tooltip是一个鼠标悬浮提示信息,messagebox是一个弹出式对话框信息提示。

    ToolTip

     1 class Example(QtGui.QWidget):
     2     
     3     def __init__(self):
     4         super(Example, self).__init__()
     5         
     6         self.initUI()
     7         
     8     def initUI(self):
     9         
    10         QtGui.QToolTip.setFont(QtGui.QFont('SansSerif', 10))
    11         
    12         self.setToolTip('This is a <b>QWidget</b> widget')
    13         
    14         btn = QtGui.QPushButton('Button', self)
    15         btn.setToolTip('This is a <b>QPushButton</b> widget')
    16         btn.resize(btn.sizeHint())
    17         btn.move(50, 50)       
    18         
    19         self.setGeometry(300, 300, 250, 150)
    20         self.setWindowTitle('Tooltips')    
    21         self.show()
    22         
    23 def main():
    24     
    25     app = QtGui.QApplication(sys.argv)
    26     ex = Example()
    27     sys.exit(app.exec_())
    28 
    29 
    30 if __name__ == '__main__':
    31     main()

    效果如下,当把鼠标放在button上时,会出现一个小小的提示信息This is a QPushButton widget:

    通过这个例子可以看到,每个元素都可以设置自己的tooltip。

    MessageBox

     1 #!/usr/bin/python
     2 #coding:utf-8
     3 #Filename:messagebox.py
     4 import sys
     5 from PySide.QtCore import *
     6 from PySide.QtGui import *
     7 class Example(QWidget):
     8   def __init__(self):
     9     super(Example ,self).__init__()
    10     self.initUI()
    11   def initUI(self):
    12     self.setGeometry(300,300,250,150)
    13     self.setWindowTitle('Message vox')
    14     self.show()
    15   def closeEvent(self,event):
    16     reply = QMessageBox.question(self,'Message','Are you 
    17          sure to quit?',QMessageBox.Yes | QMessageBox.No,
    18          QMessageBox.No)
    19     if reply == QMessageBox.Yes:
    20       event.accept()
    21     else:
    22       event.ignore()
    23 
    24 def main():
    25   app = QApplication(sys.argv)
    26   ex = Example()
    27   sys.exit(app.exec_())
    28 if __name__ == "__main__":
    29   main()
    QMessageBox.question(self,'Message','Are you  sure to quit?',QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
    第一个参数为Widget,第二个参数为messagebox的标题,第三个参数为显示的内容,第四个参数为选项,第五个参数为默认的获取焦点的选项,这里时默认为NO获取焦点。


     

     

  • 相关阅读:
    关于 下载 nfs-utils时的 gssproxy conflicts with selinux-policy-3.13.1-102.el7.noarch 错误
    SCP命令
    DHCP服务
    NFS服务
    ssh免密登录
    可见性判断
    (八)图像处理
    (八)图像处理
    (八)Grahpics之Blit
    (七)时间动画_Time
  • 原文地址:https://www.cnblogs.com/danger/p/3473973.html
Copyright © 2011-2022 走看看