我喜欢你 抖音表白程序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 相关文章推荐
用C++封装MySQL的API的教程
May 06 Python
Python排序搜索基本算法之堆排序实例详解
Dec 08 Python
微信跳一跳python辅助软件思路及图像识别源码解析
Jan 04 Python
从django的中间件直接返回请求的方法
May 30 Python
python多线程并发让两个LED同时亮的方法
Feb 18 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
Aug 23 Python
Python爬虫图片懒加载技术 selenium和PhantomJS解析
Sep 18 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
Feb 09 Python
django2.2 和 PyMySQL版本兼容问题
Feb 17 Python
pytorch dataloader 取batch_size时候出现bug的解决方式
Feb 20 Python
Python使用matplotlib绘制圆形代码实例
May 27 Python
selenium+headless chrome爬虫的实现示例
Jan 08 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
windows中为php安装mongodb与memcache
2015/01/06 PHP
php 指定范围内多个随机数代码实例
2016/07/18 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
2017/06/17 PHP
PHP实现动态删除XML数据的方法示例
2018/03/30 PHP
jQuery+jqmodal弹出窗口实现代码分明
2010/06/14 Javascript
js事件监听机制(事件捕获)总结
2014/08/08 Javascript
javascript实现英文首字母大写
2015/04/23 Javascript
js实现图片轮播效果
2015/12/19 Javascript
jQuery zTree加载树形菜单功能
2016/02/25 Javascript
JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)
2016/02/26 Javascript
jQuery中事件与动画的总结分享
2016/05/24 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
Javascript农历与公历相互转换的简单实例
2016/10/09 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
JS库particles.js创建超炫背景粒子插件(附源码下载)
2017/09/13 Javascript
vue组件详解之使用slot分发内容
2018/04/09 Javascript
vue分页器组件编写方法详解
2019/06/28 Javascript
JS实现TITLE悬停长久显示效果完整示例
2020/02/11 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
2020/10/16 Javascript
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
python中字符串类型json操作的注意事项
2017/05/02 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
Python实现EXCEL表格的排序功能示例
2019/06/25 Python
在notepad++中实现直接运行python代码
2019/12/18 Python
django中的数据库迁移的实现
2020/03/16 Python
django 前端页面如何实现显示前N条数据
2020/03/16 Python
基于python实现破解滑动验证码过程解析
2020/05/28 Python
HTML5中的Web Notification桌面右下角通知功能的实现
2018/04/19 HTML / CSS
美国经典刺绣和字母儿童服装特卖:Smocked Auctions
2018/07/16 全球购物
MyBag中文网:英国著名的时尚包袋电商零售网站
2020/07/31 全球购物
纬创Java面试题笔试题
2014/10/02 面试题
职业生涯规划设计步骤
2014/01/12 职场文书
弘扬焦裕禄精神走群众路线思想汇报
2014/09/12 职场文书
2014年打非治违工作总结
2014/11/13 职场文书