[PYTHON] Ich habe einen Küchentimer erstellt, der in der Statusleiste angezeigt wird!

Hintergrund

Ich möchte eine Küchenuhr. Aber mit Apps kann ich es nicht immer sehen, wenn ich den Browser öffne. Dann dachte ich, dass das iPhone in Ordnung wäre, aber ich habe gerade mein Handy berührt und es ist nicht gut! !!

Ich möchte eine Küchenuhr, die keinen Platz einnimmt, wo ich sie immer sehen kann! Das? Die Statusleiste oben auf dem Mac ist gut! Lass es uns machen!

Ich habe versucht, es so zu machen.

Wie man ... macht

Ich habe auf diesen Artikel verwiesen. https://qiita.com/hartmann16325/items/8667611fcaf68b9a948b

Da ich Python verwende, habe ich überprüft und festgestellt, dass es möglich ist, mit der Statusleiste mithilfe einer Bibliothek namens Rumps zu arbeiten.

Ich habe es auf GitHub gepostet. Wenn Sie möchten, bitte! https://github.com/tokky08/Kitchen_timer

@rumps.clicked(u'Ein halbe Stunde')
def selectTimer(sender):
    global minute
    minute = 30

    global start
    start = time.time()

Hier ist die Erstellung der Menüleiste.


@rumps.timer(1)
def dispTimer(sender):
    
    timer_minute = str(minute-1)
    timer_second = str(second - int(time.time() - start) % 60)

    remaining_minute = int(time.time() - start) // 60
    timer_minute = str(int(timer_minute) - remaining_minute)

    if int(timer_minute) < 0:
        app.title = "TIME UP"
        if int(timer_minute) == -1 and int(timer_second) == 58:
            rumps.notification(message="Bitte hör auf zu arbeiten! !! !!", title="TIME UP!", subtitle="")


    else:
        if int(timer_second) < 10:
            timer_second = "0" + timer_second

        app.title = "verbleibende Zeit:" + timer_minute + ":" + timer_second

Hier wird diese Funktion jede Sekunde ausgeführt. Ich denke in Minuten und Sekunden darüber nach.

Für Minuten wird time.time () -start als die Anzahl der Sekunden ab dem Beginn des Countdowns abzüglich der Zeit berechnet, zu der diese Funktion ausgeführt wurde. Und "Sekunde" ist 59 hier. second-int (time.time () -start) zeigt an, dass es um 1 Sekunde abnimmt. Der Grund, warum es% 60 ist, ist, dass es nicht negativ wird.

Sekunden repräsentieren die Minuten, die in "verbleibende Minute" vergangen sind. Sie können die verbleibenden Minuten darstellen, indem Sie sie von der ausgewählten Zeit abziehen.

Zusammenfassung

Ich habe darüber nachgedacht und nachgeforscht, und es dauerte 6 Stunden, bis es fertig war. Auch wenn es einfach aussieht, gibt es einige Herausforderungen, wenn es darum geht, es zu machen. Trotzdem kann die Idee verwirklicht werden und die Programmierung ist interessant! Ich denke.

Bitte weisen Sie auf Fehler hin.

Recommended Posts

Ich habe einen Küchentimer erstellt, der in der Statusleiste angezeigt wird!
Ich habe einen einfachen Timer erstellt, der vom Terminal aus gestartet werden kann
Ich habe ein Programm erstellt, um Wörter im Fenster nachzuschlagen (vorherige Entwicklung)
Ich habe einen Befehl zum Markieren des Tabellenclips gegeben
Ich habe eine Funktion erstellt, um das Modell von DCGAN zu überprüfen
Ich habe ein VGG16-Modell mit TensorFlow gemacht (unterwegs)
Ich habe versucht, einen Sender auf der IoT-Plattform "Rimotte" zu registrieren.
Ich habe den Befehl gegeben, einen farbenfrohen Kalender im Terminal anzuzeigen
Ich habe ein Skript erstellt, um Piktogramme anzuzeigen
Ich möchte den Fortschrittsbalken anzeigen
[Python] Ein Fortschrittsbalken auf dem Terminal
[Django] Erstellt ein Feld zur Eingabe von Daten mit 4-stelligen Zahlen
Erzeugt halbautomatisch eine Beschreibung des Pakets, das in PyPI registriert werden soll
Ich habe eine Bibliothek konoha gemacht, die den Tokenizer auf ein schönes Gefühl umstellt
Ich habe ein Programm erstellt, um die Größe einer Datei mit Python zu überprüfen
Ich habe eine Funktion erstellt, um die Bewegung eines zweidimensionalen Arrays (Python) zu sehen.
Ich habe ein POST-Skript erstellt, um ein Problem in Github zu erstellen und es im Projekt zu registrieren
Ich habe ein Tool erstellt, um die Ausführungszeit von cron zu schätzen (+ PyPI-Debüt)
Ich habe einen Appdo-Befehl erstellt, um Befehle im Kontext der App auszuführen
Ich habe ein Tool erstellt, um Hy nativ zu kompilieren
Ich habe ein Tool zum Generieren von Markdown aus der exportierten Scrapbox-JSON-Datei erstellt
Ich habe ein Tool zum automatischen Sichern der Metadaten der Salesforce-Organisation erstellt
Ich habe ein Tool erstellt, um neue Artikel zu erhalten
Ich habe ein Skript erstellt, das das aktive Fenster mit win32gui von Python aufzeichnet
Ich habe ein wenig über die Klasse recherchiert
[Python] Ich habe ein System erstellt, um "das Rezept, das ich wirklich will" von der Rezeptseite einzuführen!
Es war ein Leben, das ich auf AWS Lambda OCR wollte, um die Charaktere zu lokalisieren.
Ich möchte einen Screenshot der Site in Docker mit einer beliebigen Schriftart erstellen
Ich habe einen Befehl gegeben, auf den Start von Django zu warten, bis die Datenbank bereit ist
Ich habe eine Bibliothek erstellt, um japanische Sätze schön zu brechen
Ich habe ein Skript erstellt, um ein Snippet in README.md einzufügen
Ich habe ein Python-Modul erstellt, um Kommentare zu übersetzen
Ich möchte ein beliebtes Paket auf PyPi finden
Ich habe einen Code erstellt, um illustration2vec in ein Keras-Modell zu konvertieren
Ich habe eine Python3-Umgebung unter Ubuntu mit direnv erstellt.
Ich habe eine Python-Bibliothek erstellt, die einen rollierenden Rang hat
〇✕ Ich habe ein Spiel gemacht
Ich mag es nicht, mit der Veröffentlichung von Pokemon Go frustriert zu sein, deshalb habe ich ein Skript erstellt, um die Veröffentlichung zu erkennen und zu twittern
Ich habe ein Tool erstellt, um die Antwortlinks von OpenAI Gym auf einmal zu erhalten
Ich habe eine Klasse erstellt, um das Analyseergebnis von MeCab in ndarray mit Python zu erhalten
[Atcoder] [C ++] Ich habe ein Testautomatisierungstool erstellt, das während des Wettbewerbs verwendet werden kann
Ich habe eine Funktion zum Trimmen des Bildes von Python openCV erstellt. Verwenden Sie sie daher bitte.
[Shell-Start] Ich habe versucht, die Shell mit einem billigen Linux-Board-G-Cluster auf dem Fernseher anzuzeigen
Ich habe ein Tool erstellt, um automatisch ein einfaches ER-Diagramm aus der Anweisung CREATE TABLE zu generieren
Ich habe versucht, eine Rangliste zu erstellen, indem ich das Mitgliederteam der Organisation abgekratzt habe
Ich habe ein Paket erstellt, um Zeitreihen mit Python zu filtern
Ich habe einen Befehl zum Generieren eines Kommentars für eine Tabelle in Django eingegeben
Ich habe ein Tool erstellt, um eine Wortwolke aus Wikipedia zu erstellen
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 1)
Hören Sie sich einen Roman an, der auf Amazon Polly erscheinen wird
Ich habe einen harten Pomodoro-Timer entwickelt, der mit CUI funktioniert
Ich habe ein Punktbild des Bildes von Irasutoya gemacht. (Teil 2)
[Titan Craft] Ich habe ein Werkzeug gemacht, um einen Riesen nach Minecraft zu rufen
Ich habe versucht, das Python-Skript unter Windows 10 von 2.7.11 auf 3.6.0 zu ändern