python+pyqt实现12306图片验证效果


Posted in Python onOctober 25, 2017

本文实例为大家分享了python实现12306图片验证效果的具体代码,供大家参考,具体内容如下

思路:在鼠标点击位置加一个按钮,然后再按钮中的点击事件中写一个关闭事件.

#coding:utf-8 
from PyQt4.QtGui import * 
from PyQt4.QtCore import * 
from push_button import * 
from PIL import Image 
 
class Yanzheng(QWidget): 
  def __init__(self,parent=None): 
    super(Yanzheng,self).__init__(parent) 
    self.m_start_point=0 #x坐标 
    self.m_end_point=0 #y坐标 
    self.coordinate=[] 
    self.codeimage="./img/code.png" 
    self.connect(self,SIGNAL("addlable"),self.addpic) 
    self.main_layout=QFormLayout() 
    self.setLayout(self.main_layout) 
    self.resize(293,190) 
    self.pixmap=QPixmap("./img/cur.png") 
 
  def addpic(self): 
    print self.m_start_point,self.m_end_point 
    xpoint=self.m_start_point 
    ypoint=self.m_end_point-28 
    codepng2 = PushButton(self) 
    codepng2.loadPixmapreal('./img/cur.png') 
    codepng2.setGeometry(self.m_start_point,self.m_end_point,30,30) 
    codepng2.show() 
    #self.emit(SIGNAL("dellabel"),self.codepng2) 
    self.coordinate.append("%s,%s" %(xpoint,ypoint)) 
    self.connect(codepng2,SIGNAL("clicked()"),lambda:self.dellabel(codepng2,xpoint,ypoint)) 
    #self.update() 
  #删除标记 
  def dellabel(self,q,x,y): 
    print x,y 
    self.coordinate.remove("%s,%s" %(x,y)) 
    q.close() 
 
  def mousePressEvent(self,event): 
    if (event.type()==QEvent.MouseButtonPress): 
      self.m_start_point = event.pos().x()-12 
      self.m_end_point= event.pos().y()-12 
      self.emit(SIGNAL("addlable")) 
 
 
  def paintEvent(self, event): 
    p = QPainter(self) 
    p.drawPixmap(0,0,QPixmap(self.codeimage)) 
 
 
if __name__=='__main__': 
  import sys 
  app=QApplication(sys.argv) 
  inputurl=Yanzheng() 
  inputurl.show() 
  sys.exit(app.exec_())

效果图:

python+pyqt实现12306图片验证效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的文件和目录操作实现代码
Mar 13 Python
Python中使用Tkinter模块创建GUI程序实例
Jan 14 Python
python 写的一个爬虫程序源码
Feb 28 Python
Python的包管理器pip更换软件源的方法详解
Jun 20 Python
Python Socket传输文件示例
Jan 16 Python
python中如何使用正则表达式的集合字符示例
Oct 09 Python
python3 遍历删除特定后缀名文件的方法
Apr 23 Python
Python用5行代码写一个自定义简单二维码
Oct 21 Python
python 读取Linux服务器上的文件方法
Dec 27 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
Aug 12 Python
Python多继承以及MRO顺序的使用
Nov 11 Python
详解PyTorch模型保存与加载
Apr 28 Python
python编程羊车门问题代码示例
Oct 25 #Python
python中requests使用代理proxies方法介绍
Oct 25 #Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 #Python
python编程之requests在网络请求中添加cookies参数方法详解
Oct 25 #Python
Python探索之pLSA实现代码
Oct 25 #Python
python正则表达式re之compile函数解析
Oct 25 #Python
Python2和Python3中print的用法示例总结
Oct 25 #Python
You might like
DC这些乐高系列动画电影你看过几部?
2020/04/09 欧美动漫
PHP学习笔记之二
2011/01/17 PHP
php object转数组示例
2014/01/15 PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
2015/03/27 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
PHP中echo与print区别点整理
2021/03/09 PHP
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
2011/08/08 Javascript
seajs1.3.0源码解析之module依赖有序加载
2012/11/07 Javascript
html5的自定义data-*属性和jquery的data()方法的使用示例
2013/08/21 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
js动态生成Html元素实现Post操作(createElement)
2015/09/14 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
AngularJS入门教程之静态模板详解
2016/08/18 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
详解js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
2017/01/09 Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
2017/02/20 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
2018/01/31 Javascript
浅谈react受控组件与非受控组件(小结)
2018/02/09 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
2020/04/20 Javascript
[01:00:35]2018DOTA2亚洲邀请赛3月30日B组 EffcetVSMineski
2018/03/31 DOTA
Python简单实现子网掩码转换的方法
2016/04/13 Python
Python实现上下班抢个顺风单脚本
2018/02/07 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
Python代码太长换行的实现
2019/07/05 Python
Python 一行代码能实现丧心病狂的功能
2020/01/18 Python
Python爬虫进阶之爬取某视频并下载的实现
2020/12/08 Python
APM Monaco中国官网:来自摩纳哥珠宝品牌
2017/12/27 全球购物
给同学的道歉信
2014/01/16 职场文书
爬山的活动方案
2014/08/16 职场文书
观看《周恩来的四个昼夜》思想汇报
2014/09/12 职场文书
小学红领巾广播稿(3篇)
2014/09/13 职场文书
MySQL如何快速创建800w条测试数据表
2022/03/17 MySQL
Python os和os.path模块详情
2022/04/02 Python
Mysql 8.x 创建用户以及授予权限的操作记录
2022/04/18 MySQL
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android