最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python利用PyQT5設(shè)置鬧鐘功能

 更新時間:2022年01月11日 08:28:09   作者:Python?集中營  
這篇文章主要介紹了通過PyQt5實現(xiàn)設(shè)置一個小鬧鐘的功能,到了設(shè)置的時間后可以響起一段音樂來提醒。感興趣的小伙伴可以跟隨小編一起試一試

通過PyQt5實現(xiàn)設(shè)置一個小鬧鐘的功能,到了設(shè)置的時間后可以響起一段音樂來提醒。

導(dǎo)入UI界面組件相關(guān)的模塊

from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *

導(dǎo)入應(yīng)用操作相關(guān)的模塊

import sys
from PyQt5.QtMultimedia import *

初始化函數(shù) init_ui() 函數(shù),PyQt5 界面布局使用了三種,分別是垂直化布局、水平化布局、柵格布局。

def init_ui(self):
        self.setWindowTitle("小鬧鐘")  # 設(shè)置應(yīng)用標(biāo)題
        self.setWindowIcon(QIcon('clock.ico'))  # 設(shè)置應(yīng)用圖標(biāo)

        form = QFormLayout()  # 初始化一個表單布局

        self.current_date_label = QLabel()
        self.current_date_label.setText("當(dāng)前時間:")
        self.current_date_label_time = QLabel()
        self.current_date_label_time.setText(QDateTime.currentDateTime().toString('yyyy-MM-dd hh:mm:ss dddd'))
        self.current_timer = QTimer()
        self.current_timer.timeout.connect(self.show_current)
        self.current_timer.start(1000)

        self.timing_date_label = QLabel()
        self.timing_date_label.setText("定時時間:")
        self.timing_date_time = QDateTimeEdit()
        self.timing_date_time.setDisplayFormat("yyyy-MM-dd HH:mm:ss")
        self.timing_date_time.setDateTime(QDateTime.currentDateTime())

        self.set_rightone_label = QLabel()
        self.set_rightone_label.setText("設(shè)置鈴聲:")
        self.set_rightone_box = QComboBox()
        self.set_rightone_box.addItems(["冷漠 - 一路向北 (DJ版)","大城 - 下雪哈爾濱","許巍 - 時光"])

        form.addRow(self.current_date_label,self.current_date_label_time)
        form.addRow(self.timing_date_label,self.timing_date_time)
        form.addRow(self.set_rightone_label,self.set_rightone_box)

        hbox = QHBoxLayout()  # 初始化水平布局

        self.version = QLabel()
        self.version.setText("公眾號:[Python 集中營]")

        self.start_btn = QPushButton()
        self.start_btn.setText("開始")
        self.start_btn.clicked.connect(self.start_btn_click)

        hbox.addWidget(self.version)
        hbox.addWidget(self.start_btn)

        vbox = QVBoxLayout()  # 初始化垂直布局
        vbox.addLayout(form)
        vbox.addLayout(hbox)

        self.setLayout(vbox)  # 設(shè)置主布局

創(chuàng)建槽函數(shù) show_current(),用于實時顯示時間的變化并將時間更新到QLabel組件上面,目前做的是秒級的時間更新。

def show_current(self):
        '''
        刷新當(dāng)前時間顯示、每隔一秒鐘刷新
        :return:
        '''
        current_time = QDateTime.currentDateTime().toString('yyyy-MM-dd hh:mm:ss dddd')
        self.current_date_label_time.setText(current_time)

創(chuàng)建槽函數(shù) timing_his(),監(jiān)聽定時時間是否到達。在定時時間到達時播放音樂,現(xiàn)在代碼塊中總共引入了三首歌曲,需要的可以按照自己喜好添加自己喜歡的歌曲。

def timing_lis(self):
        if QDateTime.currentDateTime() < self.timing_date_time.dateTime():
            print("[{}]:定時時間沒有到達".format(QDateTime.currentDateTime().toString('yyyy-MM-dd hh:mm:ss dddd')))
        else:
            print("[{}]:定時時間已經(jīng)到達".format(QDateTime.currentDateTime().toString('yyyy-MM-dd hh:mm:ss dddd')))
            self.current_timer_lis.stop()
            selected = self.set_rightone_box.currentText()
            print("開始播放音樂:{}".format(selected))
            url = QUrl.fromLocalFile("{}.mp3".format(selected))
            self.player.setMedia(QMediaContent(url))
            self.player.play()

創(chuàng)建槽函數(shù) start_btn_click(),將該函數(shù)綁定開始按鈕上用于啟動鬧鐘。

def start_btn_click(self):
        self.current_timer_lis = QTimer()
        self.current_timer_lis.timeout.connect(self.timing_lis)
        self.current_timer_lis.start(500)

小鬧鐘實現(xiàn)的主要代碼塊就是上面這些了。

補充

還可以不利用PyQT5,直接用Python實現(xiàn)鬧鐘功能,示例代碼如下

音頻文件放入和.py文件同級的目錄下

import winsound # 導(dǎo)入此模塊實現(xiàn)聲音播放功能
import time # 導(dǎo)入此模塊,獲取當(dāng)前時間
# 提示用戶設(shè)置時間和分鐘
my_hour = input("請輸入時:")
my_minute = input("請輸入分:")
flag = 1
while flag:
  t = time.localtime() # 當(dāng)前時間的紀(jì)元值
  fmt = "%H %M"
  now = time.strftime(fmt, t) # 將紀(jì)元值轉(zhuǎn)化為包含時、分的字符串
  now = now.split(' ') #以空格切割,將時、分放入名為now的列表中
  hour = now[0]
  minute = now[1]
  if hour == my_hour and minute == my_minute:
    music = 'Good Time.wav'
    winsound.PlaySound(music, winsound.SND_ALIAS)
    flag = 0

到此這篇關(guān)于Python利用PyQT5設(shè)置鬧鐘功能的文章就介紹到這了,更多相關(guān)Python PyQT5鬧鐘功能內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于tensorflow加載部分層的方法

    基于tensorflow加載部分層的方法

    今天小編就為大家分享一篇基于tensorflow加載部分層的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 深入解析Python中的lambda表達式的用法

    深入解析Python中的lambda表達式的用法

    這篇文章主要介紹了深入解析Python中的lambda表達式的用法,包括其與def之間的區(qū)別,需要的朋友可以參考下
    2015-08-08
  • python statsmodel的使用

    python statsmodel的使用

    這篇文章主要介紹了python statsmodel使用的相關(guān)資料,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-12-12
  • 對IPython交互模式下的退出方法詳解

    對IPython交互模式下的退出方法詳解

    今天小編就為大家分享一篇對IPython交互模式下的退出方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • Idea安裝python顯示無SDK問題解決方案

    Idea安裝python顯示無SDK問題解決方案

    這篇文章主要介紹了Idea安裝python顯示無SDK問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Python 存儲字符串時節(jié)省空間的方法

    Python 存儲字符串時節(jié)省空間的方法

    這篇文章主要介紹了Python 存儲字符串時節(jié)省空間的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • python 給圖像添加透明度(alpha通道)

    python 給圖像添加透明度(alpha通道)

    這篇文章主要介紹了python 給圖像添加透明度,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 用Python的pandas框架操作Excel文件中的數(shù)據(jù)教程

    用Python的pandas框架操作Excel文件中的數(shù)據(jù)教程

    這篇文章主要介紹了用Python的pandas框架操作Excel文件中的數(shù)據(jù)教程,包括單位格式轉(zhuǎn)換、分類匯總等基本操作,需要的朋友可以參考下
    2015-03-03
  • Python基于network模塊制作電影人物關(guān)系圖

    Python基于network模塊制作電影人物關(guān)系圖

    這篇文章主要介紹了Python基于network模塊制作電影人物關(guān)系圖,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Python異常之常見的Bug類型解決方法

    Python異常之常見的Bug類型解決方法

    這篇文章主要介紹了Python異常之常見的Bug類型解決方法,主要分享一些粗心導(dǎo)致和知識不熟練導(dǎo)致的語法錯誤以及被迫掉坑等內(nèi)容,文章介紹非常詳細需要的小伙伴可以參考一下
    2022-03-03

最新評論

广州市| 遂平县| 宣化县| 射阳县| 天台县| 来凤县| 若尔盖县| 芦溪县| 澄江县| 富蕴县| 新泰市| 太白县| 凤翔县| 文登市| 兖州市| 淮北市| 夏河县| 团风县| 礼泉县| 永寿县| 贵州省| 肥城市| 通辽市| 开原市| 肇源县| 即墨市| 汉中市| 陆河县| 利川市| 顺义区| 洛阳市| 天峻县| 兴隆县| 固始县| 绍兴市| 渑池县| 辽宁省| 宁阳县| 兖州市| 卢湾区| 盐亭县|