我喜欢你 抖音表白程序python版


Posted in Python onApril 07, 2019

本文实例为大家分享了python抖音表白神器,供大家参考,具体内容如下

# -*- coding: utf-8 -*-


import sys
from PyQt5 import QtWidgets
from PyQt5.QtGui import QFont,QIcon#QtWidgets不包含QFont必须调用QtGui
from PyQt5 import QtGui,QtCore
import random

class MessageBox(QtWidgets.QWidget):#继承自父类QtWidgets.QWidget
 CloseAllowed=0
 def __init__(self,parent = None):#parent = None代表此QWidget属于最上层的窗口,也就是MainWindows.
  QtWidgets.QWidget.__init__(self)#因为继承关系,要对父类初始化
#通过super初始化父类,__init__()函数无self,若直接QtWidgets.QWidget.__init__(self),括号里是有self的
  self.setGeometry(300, 300, 800,800) # setGeometry()方法完成两个功能--设置窗口在屏幕上的位置和设置窗口本身的大小。它的前两个参数是窗口在屏幕上的x和y坐标。后两个参数是窗口本身的宽和高
  #self.resize(1000, 500) # 设置窗体大小,本行可有可无。
  self.center()#自定义一个居中的函数
  self.setFixedSize(self.width(),self.height());#PyQT禁止调整窗口大小和窗口最大化按钮
  #self.setWindowFlags(QtCore.Qt.WindowMinimizeButtonHint)#PyQT禁止窗口最大化按钮和关闭按钮
  self.setWindowTitle(u'表白神器-powered by 遂越净郝') # 仅仅设置窗体标题,不设置位置。
  self.setWindowIcon(QIcon('rose.png')) # 调用QIcon构造函数时,我们需要提供要显示的图标的路径(相对或绝对路径)。同时注意:使用QIcon类型必须导入此模块from PyQt5.QtGui import QIcon
  self.setToolTip(u'知乎搜索<b>遂越净郝</b>获取源码')#调用setToolTip()方法,该方法接受富文本格式的参数,css之类。
  QtWidgets.QToolTip.setFont(QFont('华文楷体', 10))#设置字体以及字体大小
  self.label1 = QtWidgets.QLabel(u'<b>小姐姐,观察你很久了!</b>', self) # 建立一个标签
  self.label1.move(150, 40) # 使此标签移动到这个部件(260,40)的位置
  self.label1.setFont(QFont("Timers", 20));#设置字体与字体大小
  self.label2= QtWidgets.QLabel(u'<b>做我女朋友好不好?</b>', self) # 建立一个标签
  self.label2.move(150, 100) # 使此标签移动到这个部件(260,100)的位置
  self.label2.setFont(QFont("Timers", 20));#设置字体与字体大小

  #Qt中提供的调色板QPalette类就是专门用于管理控件的外观显示。QPalette类相当于对话框或控件的调色板,管理着控件和窗体的所有颜色。
  #每个窗体和控件都包含一个QPalette对象,在显示时,对其做相应的设置即可
  self.window_pale = QtGui.QPalette()#实例化QPalette类
  self.window_pale.setBrush(self.backgroundRole(), QtGui.QBrush(QtGui.QPixmap("biu.jpg")))#打开图片
  self.setPalette(self.window_pale)#应用背景色
  # setStyleSheet来设置图形界面的外观

  self.buttonOK = QtWidgets.QPushButton(u'同意',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的
  self.buttonOK.setFocusPolicy(QtCore.Qt.NoFocus)#按钮无焦点
  # Qt::TabFocus 0x1 接受Tab键焦点
  # Qt::ClickFocus 0x2 接受鼠标单击做焦点
  # Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点
  # Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件
  # Qt::NoFocus 0 不接受焦点
  self.buttonOK.move(50, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角
  self.buttonOK.clicked.connect(self.showDialogOK)

  self.buttonE = QtWidgets.QPushButton(u'考虑考虑',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的
  self.buttonE.setFocusPolicy(QtCore.Qt.NoFocus) # 按钮无焦点
  # Qt::TabFocus 0x1 接受Tab键焦点
  # Qt::ClickFocus 0x2 接受鼠标单击做焦点
  # Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点
  # Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件
  # Qt::NoFocus 0 不接受焦点
  self.buttonE.move(330, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角
  self.buttonE.clicked.connect(self.showDialogEE)

  self.buttonNO = QtWidgets.QPushButton(u'拒绝',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的
  self.buttonNO.setFocusPolicy(QtCore.Qt.NoFocus) # 按钮无焦点
  # Qt::TabFocus 0x1 接受Tab键焦点
  # Qt::ClickFocus 0x2 接受鼠标单击做焦点
  # Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点
  # Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件
  # Qt::NoFocus 0 不接受焦点
  self.buttonNO.move(610, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角
  self.buttonNO.clicked.connect(self.showDialogNO)




 def showDialogOK(self):
  QtWidgets.QMessageBox.information(self, "欧耶", "爱你,么么么么么么么哒~~~", QtWidgets.QMessageBox.Ok)
  self.CloseAllowed = 1

 def showDialogEE(self):
  QtWidgets.QMessageBox.information(self, "别纠结了", "你完了,你妈让你嫁给我", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你爸也是这么说的", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你奶奶也让你嫁给我", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你哥哥也同意了,你全家都同意", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你闺蜜说嫁给我没错", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你爸说不同意就打你", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "接受现实吧,我会对你好的", QtWidgets.QMessageBox.Ok)
  QtWidgets.QMessageBox.information(self, "别纠结了", "你都是我的人了", QtWidgets.QMessageBox.Ok)

 def showDialogNO(self):
  self.q = random.randint(0, 650) # 在0-650内生成随机的X坐标
  self.w = random.randint(150, 650) # 在150-650内生成随机的Y坐标
  self.buttonNO.move(self.q, self.w)


 #enterEvent事件PyQt自动运行,无需调用
 # def enterEvent(self,event):#重写了鼠标的enterEvent事件,由于继承了窗口类,鼠标一进入主窗口便会出发此函数
 #  self.q=random.randint(0,650)#在0-650内生成随机的X坐标
 #  self.w=random.randint(150,650)#在150-650内生成随机的Y坐标
 #  self.buttonNO.move(self.q,self.w)

#当我们关闭一个窗口时,在PyQt中就会触发一个QCloseEvent的事件,正常情况下会直接关闭这个窗口,
#但是我们不希望这样的事情发生,所以我们需要重新定义QCloseEvent,函数名称为closeEvent不可变
 def closeEvent(self,event):#函数名固定不可变

  if self.CloseAllowed==1:
   event.accept()#关闭窗口
  else:
   QtWidgets.QMessageBox.information(self, "未作回应", "小姐姐,请不要逃避!", QtWidgets.QMessageBox.Ok)
   event.ignore()#忽视点击X事件
 def center(self):
  screen=QtWidgets.QDesktopWidget().screenGeometry()#获取屏幕分辨率
#QtWidgets.QDesktopWidget().screenGeometry()中QDesktopWidget()也有括号
  size=self.geometry()#获取窗口尺寸
  self.move((screen.width()-size.width())/2,(screen.height()-size.height())/2)#利用move函数窗口居中


app=QtWidgets.QApplication(sys.argv)
window=MessageBox()
window.show()
sys.exit(app.exec_())

生成exe

#!/usr/bin/env python

# -*- coding: utf-8 -*-
"""
__title__ = '将calculator项目转换为exe文件'
__author__ = '遂越净郝'
"""
from PyInstaller.__main__ import run

if __name__ == '__main__':

 opts = ['douyin.py', '-w', '--onefile']
 #opts = ['douyin.py', '-F']
 #opts = ['douyin.py', '-F', '-w']
 #opts = ['douyin.py', '-F', '-w', '--icon=TargetOpinionMain.ico','--upx-dir','upx391w']
 run(opts)

运行结果请阅读原文。

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

Python 相关文章推荐
python通过加号运算符操作列表的方法
Jul 28 Python
python 中random模块的常用方法总结
Jul 08 Python
基于python的字节编译详解
Sep 20 Python
Python实现破解猜数游戏算法示例
Sep 25 Python
Python实现的根据IP地址计算子网掩码位数功能示例
May 23 Python
Python实现基于KNN算法的笔迹识别功能详解
Jul 09 Python
Python框架Flask的基本数据库操作方法分析
Jul 13 Python
python pexpect ssh 远程登录服务器的方法
Feb 14 Python
Python基础学习之时间转换函数用法详解
Jun 18 Python
python Gunicorn服务器使用方法详解
Jul 22 Python
pytorch自定义二值化网络层方式
Jan 07 Python
为什么称python为胶水语言
Jun 16 Python
详解python爬虫系列之初识爬虫
Apr 06 #Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
Apr 06 #Python
python基础梳理(一)(推荐)
Apr 06 #Python
详解python持久化文件读写
Apr 06 #Python
python七夕浪漫表白源码
Apr 05 #Python
python浪漫表白源码
Apr 05 #Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
Apr 05 #Python
You might like
php面向对象全攻略 (二) 实例化对象 使用对象成员
2009/09/30 PHP
php中大括号作用介绍
2012/03/22 PHP
php引用地址改变变量值的问题
2012/03/23 PHP
解析左右值无限分类的实现算法
2013/06/20 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
2014/06/23 PHP
PHP+Ajax 检测网络是否正常实例详解
2016/12/16 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
一直复略了的一个问题,关于表单重复提交
2007/02/15 Javascript
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
JS原型对象通俗&quot;唱法&quot;
2012/12/27 Javascript
将input file的选择的文件清空的两种解决方案
2013/10/21 Javascript
当鼠标移动时出现特效的JQuery代码
2013/11/08 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
IE下通过a实现location.href 获取referer的值
2014/09/04 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
JS模拟简易滚动条效果代码(附demo源码)
2016/04/05 Javascript
深入理解Ajax的get和post请求
2016/06/02 Javascript
简单的js表格操作
2016/09/24 Javascript
vue.js表格组件开发的实例详解
2016/10/12 Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
2017/05/26 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
2017/07/27 Javascript
vue2实现数据请求显示loading图
2017/11/28 Javascript
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
js实现带搜索功能的下拉框
2020/01/11 Javascript
vue实现路由懒加载的3种方法示例
2020/09/01 Javascript
python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件
2014/08/15 Python
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
Python中for循环和while循环的基本使用方法
2015/08/21 Python
Python 修改列表中的元素方法
2018/06/26 Python
北美三大旅游网站之一:Travelocity
2017/08/12 全球购物
Pedro官网:新加坡时尚品牌
2019/08/27 全球购物
卫校毕业生自我鉴定
2013/10/31 职场文书
合伙经营协议书范本(通用版)
2014/12/03 职场文书
篮球拉拉队口号
2015/12/25 职场文书
吉利入股戴姆勒后smart“长大了”
2022/04/21 数码科技