ahk时钟显示

ahk时钟小程序界面

这里涉及了ahk的gui的操作、GuiControl的操作、自定义变量的设置、消息映射代码,定时器的使用以及自定义函数的使用。

重点:gui的add时采用"v名字"的方式拿到控件的变量。消息onMessage使用时消息代码要自己查,然后后面跟的是下面的方法名。setTimer后面跟的是类似goto语句的东西,不像一般方法那样调用。还有上面设置的gui属性是下面添加gui时用的。

用户操作:点击ahk文件就能打开时间界面。界面会一直刷新,可能时间有偏差,不过都是获取的系统时间,一般使用是没有问题的。关闭界面只需要随便一个键盘键或鼠标左键。

代码如下:

;显示时间

#Persistent

#SingleInstance Force

 timestr = %A_YYYY%-%A_MM%-%A_DD% %A_Hour%:%A_Min%:%A_Sec%

Gui_color1= black

font_color1=Cwhite

Gui, -SysMenu -Caption +ToolWindow +AlwaysOnTop +E0x20

;先控制属性,下面依据这些属性加窗口

Gui, Color, %Gui_color1%

gui, font,s20 %font_color1%, Arial

;;注意"vMyText" 定义了该控件的变量,该变量"MyText"将是全局变量(或是引用类型变量,或一个静态变量)。

 Gui,add,Text,vMyText, %timestr%

Gui,show,AutoSize Center 

;设置刷新时间,重复地刷新。

SetTimer, UpdateClock, 1000

;键盘点击事件

OnMessage(0x100, "ON_WM_KEYDOWN")

OnMessage(0x202, "ON_WM_LBUTTONUP")

    return

UpdateClock:

{

  timestr2 = %A_YYYY%-%A_MM%-%A_DD% %A_Hour%:%A_Min%:%A_Sec%

  GuiControl,,MyText,%timestr2%

      return

}

ON_WM_KEYUP()

{

  exitapp

      return ;退出

}

ON_WM_KEYDown()

{

;keydown 再keyup防止开始就有keyup事件响应

  OnMessage(0x101, "ON_WM_KEYUP")

  return ;退出

}

ON_WM_LBUTTONUP()

{

  exitapp

      return ;退出

}

你可能感兴趣的:(ahk时钟显示)