AutoHotkey 语言 创建定时提醒事项示例

AutoHotkey阿木 发布于 2025-06-12 17 次阅读


AutoHotkey Language: Creating a Timer Reminder Application

AutoHotkey is a powerful scripting language for automating tasks on Windows systems. It allows users to create scripts that can automate repetitive tasks, simulate keyboard and mouse inputs, and much more. In this article, we will delve into the creation of a timer reminder application using AutoHotkey. This application will help users set reminders for specific times and receive notifications when the time is due.

Introduction to AutoHotkey

AutoHotkey is a scripting language designed for automating the Windows GUI and general scripting. It is often used for creating hotkeys, automating repetitive tasks, and building custom applications. AutoHotkey scripts are written in a simple, easy-to-understand syntax and can be executed directly on the Windows command line.

The Timer Reminder Application

The timer reminder application will allow users to set reminders for specific times. When the set time is reached, the application will display a notification to the user. This can be useful for scheduling meetings, reminding oneself of important tasks, or simply keeping track of time.

Requirements

Before we begin, ensure that you have the following:

- AutoHotkey installed on your system.
- Basic knowledge of AutoHotkey syntax and functions.

Step-by-Step Guide

Step 1: Setting Up the Project

Create a new folder for your project and open it in your favorite text editor. Save the file with a `.ahk` extension, for example, `timer_reminder.ahk`.

Step 2: Defining the Main Function

The main function of our timer reminder application will be to listen for user input to set a reminder. We will use the `InputBox` function to prompt the user for the reminder's title and time.

ahk
Gui, Add, Text, , Enter the reminder title:
Gui, Add, Edit, vReminderTitle
Gui, Add, Text, , Set the reminder time (HH:MM):
Gui, Add, Edit, vReminderTime
Gui, Add, Button, Default, Set Reminder
Gui, Show

Step 3: Handling the Set Reminder Button

When the user clicks the "Set Reminder" button, we will use the `Timer` function to schedule the reminder. The `Timer` function takes two arguments: the time to wait in milliseconds and a callback function to execute when the timer expires.

ahk
GuiControlGet, ReminderTitle
GuiControlGet, ReminderTime

; Convert the time to milliseconds
Split(ReminderTime, ":", , TimeArray)
ReminderTimeInMilliseconds := (TimeArray[1] 60 60 1000) + (TimeArray[2] 60 1000)

; Schedule the reminder
SetTimer, ShowReminder, %ReminderTimeInMilliseconds%

Step 4: Creating the Reminder Notification

The `ShowReminder` function will be called when the timer expires. It will display a notification to the user using the `MsgBox` function.

ahk
ShowReminder:
MsgBox, 4,, %ReminderTitle% is due!
return

Step 5: Exiting the Application

To exit the application, we will use the `ExitApp` function. This function will terminate the script and close all associated windows.

ahk
GuiClose:
ExitApp

Step 6: Finalizing the Script

Now that we have all the necessary functions, we can put them together in the main script. Save the file and run it using the AutoHotkey executable.

ahk
Persistent
NoEnv

Gui, Add, Text, , Enter the reminder title:
Gui, Add, Edit, vReminderTitle
Gui, Add, Text, , Set the reminder time (HH:MM):
Gui, Add, Edit, vReminderTime
Gui, Add, Button, Default, Set Reminder
Gui, Show

SetTimer, CheckInput, 1000

return

CheckInput:
GuiControlGet, ReminderTitle
GuiControlGet, ReminderTime

; Convert the time to milliseconds
Split(ReminderTime, ":", , TimeArray)
ReminderTimeInMilliseconds := (TimeArray[1] 60 60 1000) + (TimeArray[2] 60 1000)

; Schedule the reminder
SetTimer, ShowReminder, %ReminderTimeInMilliseconds%
return

ShowReminder:
MsgBox, 4,, %ReminderTitle% is due!
return

GuiClose:
ExitApp

Conclusion

In this article, we have created a simple timer reminder application using AutoHotkey. The application allows users to set reminders for specific times and receive notifications when the time is due. By following the steps outlined in this article, you can create your own custom AutoHotkey applications to automate various tasks on your Windows system. Happy scripting!