我想将当前时间转换为字符串,以便稍后使用WM_PAINT中的Drawtext函数显示它。格式hh:mm:ss。
最便捷的方法是将时间转换成字符串。
答案 0 :(得分:0)
格式化时间字符串的方法有很多种。
如果您需要特定格式,可以自行格式化字符串:
WCHAR buf[100];
SYSTEMTIME st;
GetLocalTime(&st); // Local time
wsprintfW(buf, L"%.2u:%.2u:%.2u", st.wHour, st.wMinute, st.wSecond); // 24h format
DrawTextW(hDC, buf, -1, &yourRect, DT_LEFT);
如果您想使用用户首选项设置时间格式,则必须拨打GetTimeFormat
。或者您可以使用C standard library functions。
当您收到WM_PAINT
消息时,您拨打了BeginPaint
和GetClientRect
,然后是DrawText
,最后是EndPaint
。