# -*- coding: utf-8 -*-
from PyQt5 import QtWidgets,QtCore #从pyqt库导入QtWindget通用窗口类
from formnew import Ui_Form class mywindow(QtWidgets.QWidget,Ui_Form): #自己建的类,继承QtWidgets.Qwidget类方法和Ui_Form界面类 _signal = QtCore.pyqtSignal(str) #定义信号,定义参数类型为str def __init__(self):
super(mywindow,self).__init__() #首先找到子类(mywindow)的父类(QWidget),然后把my的对象self转成QWidget的对象,然后被转化的self调用自己的init函数
self.setupUi(self) #直接继承界面类,调用类的setupUi方法 self.pushButton_2.clicked.connect(self.myPrint) #连接自己的槽函数
self._signal.connect(self.mySignal) #将信号连接到函数mySignal def myPrint(self): #自定义的槽函数。槽其实就是个函数(方法)
self.textBrowser.setText("")
self.textBrowser.append("我是槽函数")
self._signal.emit("发射信号,传递字符串") def mySignal(self,string): #自定义信号函数
self.textBrowser.append(string) #接受到字符串,打印出来
self.textBrowser.append("我是信号函数") if __name__=="__main__":
import sys app=QtWidgets.QApplication(sys.argv) #pyqt窗口必须在QApplication方法中使用
myshow=mywindow() #生成mywindow类的实例 myshow
myshow.show() #myshow调用show方法
sys.exit(app.exec()) #消息结束的时候,结束进程,并返回0,接着调用sys.exit(0)退出程序

上面这个是index.py

从qtdesigner直接生成的代码:

 __author__ = 'yangyang5'

 from PyQt5 import QtCore, QtGui, QtWidgets                              #导入模块

 class Ui_Form(object):                                                  #创建窗口类,继承object

     def setupUi(self, Form):
Form.setObjectName("Form") #设置窗口名
Form.resize(400, 300) #设置窗口大小
self.pushButton = QtWidgets.QPushButton(Form) #新建按钮,并加入到窗口中
self.pushButton.setGeometry(QtCore.QRect(270, 240, 75, 23)) #设置按钮的大小和位置
self.pushButton.setObjectName("pushButton") #设置按钮名
self.textBrowser = QtWidgets.QTextBrowser(Form)
self.textBrowser.setGeometry(QtCore.QRect(60, 20, 256, 192))
self.textBrowser.setObjectName("textBrowser")
self.pushButton_2 = QtWidgets.QPushButton(Form)
self.pushButton_2.setGeometry(QtCore.QRect(40, 240, 75, 23))
self.pushButton_2.setObjectName("pushButton_2") self.retranslateUi(Form)
self.pushButton.clicked.connect(Form.close) #点击按钮,关闭窗体
QtCore.QMetaObject.connectSlotsByName(Form) #关联信号槽 def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form")) #设置窗口标题
self.pushButton.setText(_translate("Form", "Quit")) #设置按钮名
self.pushButton_2.setText(_translate("Form", "Print"))

使用环境:

Python3.4 + Pyqt5第三方库

相关资料:

http://blog.csdn.net/a359680405/article/details/45096185

【PyQt5】学习笔记(1)的更多相关文章

  1. PyQt5学习笔记-从主窗体打开一个子窗体

    PyQt5学习笔记-从主窗体打开一个子窗体 软件环境: Eric6+Python3.5+PyQt5 试验目标: 1.点击菜单项Open,打开一个子窗体 2.点击按钮Open,打开一个子窗体 主窗体设计 ...

  2. Pyqt5学习笔记(一)

    Python已有的GUI框架: Tkinter(python内嵌的GUI环境,使用TCL实现,易学易用,方便简单创GUI自带无需安装,适用于Unix.Windows和Mac系统组,在Tk8.0的后续版 ...

  3. PyQt5学习笔记----标准文件打开保存框QFileDialog

    单个文件打开 QFileDialog.getOpenFileName()多个文件打开 QFileDialog.getOpenFileNames() 文件夹选取     QFileDialog.getE ...

  4. PYQT5学习笔记之各模块介绍

    Qtwidgets模块包含创造经典桌面风格的用户界面提供了一套UI元素的类 Qtwidegts下还有以下常用对象,所以一般使用Qtwidegts时会使用面向对象式编程 QApplication: ap ...

  5. PyQt5学习笔记14----初识pyqt多线程操作

    转载:翻滚吧挨踢男 首先来看一个例子: # coding=utf-8 __author__ = 'a359680405' from PyQt5.QtCore import * from PyQt5.Q ...

  6. Python pyQt4/PyQt5 学习笔记4(事件和信号)

    信号 & 槽 import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import (QWidget,QLCDNumber,QS ...

  7. Python pyQt4/PyQt5 学习笔记3(绝对对位,盒布局,网格布局)

    本节研究布局管理的内容. (一)绝对对位  import sys from PyQt4 import QtGui class Example(QtGui.QWidget): def __init__( ...

  8. Python pyQt4/pyQt5 学习笔记2(状态栏、菜单栏和工具栏)

    例子:状态栏.菜单栏和工具栏 import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(sel ...

  9. Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)

    PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...

  10. PyQt5学习笔记

    setMouseTracking bool mouseTracking这个属性保存的是窗口部件跟踪鼠标是否生效.如果鼠标跟踪失效(默认),当鼠标被移动的时候只有在至少一个鼠标按键被按下时,这个窗口部件 ...

随机推荐

  1. windows+linux环境部署搭建

    http://www.cnblogs.com/lioillioil/archive/2011/09/14/2176595.html

  2. 解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg

    解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE\SOFT ...

  3. 详解DHV:怎么具体展示高价值

    我的理解里面:高价值分两个部分,一个是静态的,一个是动态的. 我把静态的称为硬性指标,动态的称为软性指标. 下面我给大家仔细解释一下两个指标的具体展示. ----------------------- ...

  4. WebDriver 页面等待

    selenium2.4.0版本提供了页面等待处理. 显示等待元素可见: protected void WaitElementVisible(By by,int timeOutInSeconds, lo ...

  5. 将cantk runtime嵌入到现有的APP中

    1,先取cantk-runtime-demos到本地: git clone https://github.com/drawapp8/cantk-runtime-demos 2,创建一个Android ...

  6. require.js学习笔记(内容属于转载总结)

    <script data-main="src/app" src="src/lib/require.js"></script> backb ...

  7. spring来了-06-事务控制

    概述 编程式事务控制 自己手动控制事务,就叫做编程式事务控制. Jdbc代码: Conn.setAutoCommite(false);  // 设置手动控制事务 Hibernate代码: Sessio ...

  8. js TAb

    有点乱,用到了自定义getByClass函数.sibling函数 <!DOCTYPE html> <html lang="en"> <head> ...

  9. [maven] 搭建多模块企业级项目

    知识点:聚合.继承.工程依赖.单元测试.多war聚合.cargo发布 ① 准备工作 参考资料 http://www.cnblogs.com/quanyongan/archive/2013/05/28/ ...

  10. IO流--切割 合并文件

    import java.io.*; import java.util.*; public class io { public static void main(String[] args)throws ...