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 正则表达式 概述及常用字符
May 04 Python
python 中的列表解析和生成表达式
Mar 10 Python
python 合并文件的具体实例
Aug 08 Python
python实现问号表达式(?)的方法
Nov 27 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
python快排算法详解
Mar 04 Python
Python检测数据类型的方法总结
May 20 Python
详解python实现小波变换的一个简单例子
Jul 18 Python
python conda操作方法
Sep 11 Python
计算Python Numpy向量之间的欧氏距离实例
May 22 Python
Pycharm安装python库的方法
Nov 24 Python
Python djanjo之csrf防跨站攻击实验过程
May 14 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年的四部动画电影
2020/01/01 欧美动漫
PHPMailer 中文使用说明小结
2010/01/22 PHP
浅谈PHP变量作用域以及地址引用问题
2013/12/27 PHP
对PHP语言认识上需要避免的10大误区
2014/06/12 PHP
php项目中百度 UEditor 简单安装调试和调用
2015/07/15 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
PHP中Array相关函数简介
2016/07/03 PHP
php弹出提示框的是实例写法
2019/09/26 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
bootstrap data与jquery .data
2014/07/07 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
2014/09/01 Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
2016/01/26 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
nodejs实现发出蜂鸣声音(系统报警声)的方法
2017/01/18 NodeJs
详解如何将angular-ui的图片轮播组件封装成一个指令
2017/05/09 Javascript
vue如何进行动画的封装
2018/09/26 Javascript
vue发送ajax请求详解
2018/10/09 Javascript
微信小程序获取公众号文章列表及显示文章的示例代码
2020/03/10 Javascript
原生js实现俄罗斯方块
2020/10/20 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
Python 时间操作例子和时间格式化参数小结
2014/04/24 Python
numpy中实现二维数组按照某列、某行排序的方法
2018/04/04 Python
浅析Python 中几种字符串格式化方法及其比较
2019/07/02 Python
使用python从三个角度解决josephus问题的方法
2020/03/27 Python
python 画图 图例自由定义方式
2020/04/17 Python
在Keras中利用np.random.shuffle()打乱数据集实例
2020/06/15 Python
Pytorch生成随机数Tensor的方法汇总
2020/09/09 Python
Python基于pillow库实现生成图片水印
2020/09/14 Python
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
英国最大的线上保健品零售商之一:Vitamin Planet
2016/12/01 全球购物
我的大学生活演讲稿
2014/04/25 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
环保建议书600字
2014/05/14 职场文书
企业党员个人自我评价
2014/09/20 职场文书
招商引资工作汇报
2014/10/28 职场文书
mysql多表查询-笔记七
2021/04/05 MySQL