当前位置:首页 > 技术心得 > 正文内容

vc中如何获取修改系统时间的消息

xjtudll12年前 (2014-08-26)技术心得10000


问题:
我在窗口上显示了系统时间,点击后调出系统的“日期和时间 属性”对话框,修改属性后,如何得知?也就是我在程序中如何得知系统的时间修改消息?

答案:

A message that is sent whenever there is a change in the system time.
A window receives this message through its
WindowProc function.

系统时间改变后,系统就会发出这个消息。
 
LRESULT CALLBACK WindowProc(
  HWND hwnd,      
// handle to window 
  UINT uMsg,      
// message identifier 
  WPARAM wParam,  
// not used; must be zero 
  LPARAM lParam   
// not used; must be zero 
);


代码举例:
LRESULT CTimeCalibraterDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{     
    switch(message)
    {
    case WM_USER_BEGIN_CALIBRATION:
        EnableTimeCorrectCalibrate(FALSE);
        break;
       
    case WM_USER_END_CALIBRATION:
        EnableTimeCorrectCalibrate(TRUE);
        break;
       
    case WM_TIMECHANGE:      
 
        //  when systemtime has changed
        if(!m_bSetSystemTimeFlag)
        {
 
            // the systemtime be changed outside, not by this application
 
            m_Clock_Digital.SetOffsetTime(NULL);
            m_Clock_Digital.Start();
            OnButtonUpdate();
 
        }
        break;
    }
}

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/335/

标签: VC
分享给朋友:

“vc中如何获取修改系统时间的消息” 的相关文章

CC254x android6.x无法配对

参考资料: https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/457958 问题: 配对时提示密码或PIN错误,但是根本就没有到输入密码这一步,就直接说密码错误了。 环境: android 6....

Multisim运放输出超过电源电压解决

Multisim运放输出超过电源电压解决

在使用Multisim自带库里的运放的时候,例如LM324M,发现一个问题,运放的输出电压能达到几百V甚至几千V,而电源明显只有几V而已。输出电压超过电源电压,理论上是不可能的,实际上也是不可能的,那么肯定就是仿真有误了,其实根本原因是Multisim里面运放是三脚模型,根本没考虑电源。我们查看LM...

HP Laserjet 1020 在Mac OSX下的安装

HP Laserjet 1020 在Mac OSX下的安装

这个教程是在Mac OSX 10.8操作系统下实现的,但是升级到10.9后,依旧能正常使用。 公司的打印机是HP Laserjet 1020,打印服务器和其他同事的电脑都是Windows系统,这个驱动还是很容易搞定的。 现在有一台Mac Mini,需要连打印机,但是官方不支持Mac OSX。在惠普网...

CRC查表法——表的由来

为了更容易理解这篇文章,拿出纸笔跟着算一遍吧。文中的一些假定:a0,a1,b0,b1,b2,b3,c1,c2,c3等等,拿笔将其含义记下来,免得思维混乱。 查表法实际上利用的是XOR运算的交换律和结合律,即(A XOR B )XOR C = A XOR (B XOR C) 我们再以一个简单的例子来...

Altium Designer中长方形焊盘的制作

Altium Designer中长方形焊盘的制作

常用的焊盘多为圆形或者正方形。有时候需要制作长方形的,方法如下。 比如下面的一个连接器的封装: 其中的1、2、3脚为长方形,制作方法如下图所示。 放置焊盘后,如下图所示设置:...

Xcode Error:loaded some nib but the view outlet was not set解决

Xcode Error:loaded some nib but the view outlet was not set解决

当使用 initWithNibName 函数, 并使用由nib文件生成的ViewController 的view属性时候,遇到这个问题。 *** Terminating app due to uncaught exception 'NSInternalInconsistencyException'...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。