mfc滑动条件怎么设置,mfc下拉选项怎么设置

首页 > 实用技巧 > 作者:YD1662023-05-07 11:58:54

创建和销毁定时器

MFC的CWnd类提供的成员函数SetTimer用于设置并启动定时器。第一个参数是我们设置的定时器ID,第二个参数是定时时间(单位毫秒),第三个参数是回调函数地址(如果设置为NULL,则通过WM_TIMER消息的消息响应函数处理定时事件)。

mfc滑动条件怎么设置,mfc下拉选项怎么设置(1)

VOID CDemoDlg::OnBnClickedBtnStart() { SetTimer(1001, 1000, NULL); } void CDemoDlg::OnBnClickedBtnStop() { KillTimer(1001); }

mfc滑动条件怎么设置,mfc下拉选项怎么设置(2)

void CDemoDlg::OnTimer(UINT_PTR nIDEvent) { if (nIDEvent == 1001) { CTime now = CTime::GetCurrentTime(); CString str = now.Format(_T("%Y-%m-%d %H:%M:%S")); SetDlgItemText(IDC_STATIC_Show_Time, str); } CDialogEx::OnTimer(nIDEvent); }

mfc滑动条件怎么设置,mfc下拉选项怎么设置(3)

滑动条控件

用Windows的定时器实现按钮按下滑动条自动增加,到达最大值归零。

mfc滑动条件怎么设置,mfc下拉选项怎么设置(4)

初始化:

g_dlg = this; m_progress.SetRange(0, 100); m_progress.SetPos(0);

设置定时器,自定义回调函数:

void CDemoDlg::OnBnClickedButnStartProgress() { ::SetTimer(GetSafeHwnd(), 1002, 10, TimerProc); m_btn_start_progress.EnableWindow(FALSE); }

设置回调函数(固定格式):

VOID CALLBACK TimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime) { int minv, maxv; g_dlg->m_progress.GetRange(minv, maxv); int pos = g_dlg->m_progress.GetPos(); pos ; if (pos > maxv) { pos = 0; ::KillTimer(hwnd, 1002); g_dlg->m_btn_start_progress.EnableWindow(TRUE); } g_dlg->m_progress.SetPos(pos); }滑动条

一般和静态文本框搭配使用,用于显示

mfc滑动条件怎么设置,mfc下拉选项怎么设置(5)

给滑动条添加拖动事件:

mfc滑动条件怎么设置,mfc下拉选项怎么设置(6)

void CDemoDlg::OnNMCustomdrawSlider(NMHDR* pNMHDR, LRESULT* pResult) { LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR); m_static_show_slider_value = m_slider.GetPos(); UpdateData(FALSE); *pResult = 0; }

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.