1 import sys
2 import typing
3
4 from PyQt5 import QtWidgets, QtGui, QtCore
5 import random
6
7 class Mywindow(QtWidgets.QWidget):
8 def __init__(self,*args,**kwargs):
9
10 super().__init__()
11 self.setWindowTitle("点按钮试试看")
12 self.resize(500,500)
13 self.move(300,100)
14
15 def mouseMoveEvent(self, ms):
16 wincu=self.cursor()
17
18 mx=random.randint(self.x(),self.x()+self.width())
19 my=random.randint(self.y(),self.y()+self.width())
20 wincu.setPos(mx,my)
21
22
23 def con():
24
25 btn.setText("恭喜您,成功了!!!撒花")
26 btn.adjustSize()
27 window.setMouseTracking(False)
28
29
30 app=QtWidgets.QApplication(sys.argv)
31 window = Mywindow()
32 window.setMouseTracking(True)
33
34
35 btn = QtWidgets.QPushButton(window)
36 btn.setText("点我啊")
37 btn.move(200,200)
38 btn.clicked.connect(con)
39 # btn.setMouseTracking(True)
40
41
42
43 window.show()
44
45
46 sys.exit(app.exec_())

第一个:鼠标发疯 _按钮还是有可能点到的

import sys
import typing from PyQt5 import QtWidgets, QtGui, QtCore
import random class Mywindow(QtWidgets.QWidget):
def __init__(self,*args,**kwargs): super().__init__()
self.setWindowTitle("点按钮试试看")
self.resize(500,500)
self.move(300,100) class button(QtWidgets.QPushButton):
def mouseMoveEvent(self, me):
max = self.width()
may = self.height()
mx = random.randint(0, 500-max)
my = random.randint(0, 500-may)
self.move(mx, my) def con(): btn.setText("恭喜您,成功了!!!撒花")
btn.adjustSize()
window.setMouseTracking(False) app=QtWidgets.QApplication(sys.argv)
window = Mywindow()
window.setMouseTracking(True) btn = button(window)
btn.setText("点我啊")
btn.move(200,200)
btn.clicked.connect(con)
btn.setMouseTracking(True) window.show() sys.exit(app.exec_())

第二个   按钮发疯 怎么也点不到  :(

PyQt5 点不着的按钮的更多相关文章

  1. Pyqt5的事例讲解

    1.第一个gui程序 import sys from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QMainWind ...

  2. pyqt5按钮计数

    万事开头难,弄了好久才做了一个简单的小程序,点击按钮就显示数字,点一下,自增1. 首先用qt设计师设计一个窗体.标签名为label,按钮名为btn,然后存储为a.ui 在shell中用命令pyuic5 ...

  3. 八、pyqt5按钮类控件——QPushButton、QRadioButton、QCheckBox

    pyqt5中常用的按钮类控件有QPushButton.QRadioButton.QCheckBox.QToolButton等.这些按钮类的基类都是QAbstracButton类.所以这些类有部分方法是 ...

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

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

  5. PyQt5点击按钮产生新窗体

    import sys from PyQt5.QtWidgets import QApplication,QWidget from form1 import Ui_Form1 from form2 im ...

  6. Py3+PyQt5+Eric6:学习记录之第一天:点击按钮获取文本框的值并输出。

    一.使用qt designer拖拽界面. 使用qtdesigner拖拽界面:

  7. pyqt5按钮退出程序

    import sys from PyQt5.QtWidgets import QHBoxLayout,QMainWindow,QApplication,QPushButton,QWidget clas ...

  8. pyqt5 设置窗口按钮等可用与不可用

    setEnabled(True) 设置窗口或者按钮可用,Flase不可用

  9. 用 eric6 与 PyQt5 实现python的极速GUI编程(系列04)---- PyQt5自带教程:地址簿(address book)

    [引子] 在PyQt5自带教程中,地址簿(address book)程序没有完全实现界面与业务逻辑分离. 本文我打算用eric6+PyQt5对其进行改写,以实现界面与逻辑完全分离. [概览] 1.界面 ...

随机推荐

  1. JavaWeb——Servlet开发

    什么是Servlet? Servlet运行的过程 Servlet的生命周期 生命周期的各个阶段 Servlet的配置 使用Web.xml配置 使用注解配置 Servlet相关接口 ServletCon ...

  2. telnet | ping

    ping通常是用来检查网络是否通畅或者网络连接速度的命令.  ping www.baidu.com 而telnet是用来探测指定ip是否开放指定端口的. telnet xxx 443 查看443开放没 ...

  3. 误删eth1或者 eth0

    不小心把机房,eth1删除了,过2天还演示,折腾一下午.... 首先eth1存在地方是2块./etc/sysconfig/network-scripts/下 /et/sysconfig/network ...

  4. Kubernetes --(k8s)volume 数据管理

    容器的磁盘的生命周期是短暂的,这就带来了许多问题:第一:当一个容器损坏了,kubelet会重启这个容器,但是数据会随着container的死亡而丢失:第二:当很多容器在同一Pod中运行的时候,经常需要 ...

  5. SQL系列总结——基础篇(一)

       数据库与表.列的关系其实就像是一个Excel工作薄(workbook)与Excel表格(sheet)以及表格中的列的关系一样.关系数据库中最基本的对象有3个:表.列.用户     基本的概念名词 ...

  6. Java并发包源码学习系列:阻塞队列实现之LinkedBlockingDeque源码解析

    目录 LinkedBlockingDeque概述 类图结构及重要字段 linkFirst linkLast unlinkFirst unlinkLast unlink 总结 参考阅读 系列传送门: J ...

  7. Flink-v1.12官方网站翻译-P027-State Schema Evolution

    状态方案的演变 Apache Flink流媒体应用通常被设计为无限期或长时间运行.与所有长期运行的服务一样,应用程序需要更新以适应不断变化的需求.这对于应用程序所针对的数据模式也是一样的,它们会随着应 ...

  8. 漫画 | CPU战争40年,真正的王者终于现身!

    上个世纪70年代,内存又慢又贵, 程序员得想尽一切办法节省内存. 那个时代的编译器也比较差劲 所以,70年代的程序员几乎都写得一手好汇编. 为了帮助程序员写好汇编,这个时候的CPU也有意把指令集做了增 ...

  9. 解决 error MSB4057: 该项目中不存在目标“_CopyWebApplication” 问题

    在使用MSBuild 编译项目的时候报错: 解决办法: 在Web项目中,使用Nuget添加引用  MSBuild.Microsoft.VisualStudio.Web.targets 即可.

  10. Maven三种打包方式jar war pom

    1.pom工程 用在父级工程或聚合工程中.用来做jar包的版本控制.必须指明这个聚合工程的打包方式为pom 2.war工程 将会打包成war,发布在服务器上的工程.如网站或服务.在SpringBoot ...