我正在用 Visual C++/Windows API 编写一个简单的 GUI 应用程序。我在资源中定义的对话框上有一个 Trackbar 控件:
CONTROL "",IDC_SLIDER1045,"msctls_trackbar32",0x50010000,23,52,141,16,0x00000000
我想在静态文本控件上显示轨迹栏值,所以我写道:
case WM_NOTIFY:
if(lParam == TRBN_THUMBPOSCHANGING)
{
Pos1 = SendMessage(GetDlgItem(hwndDlg, 1045), TBM_GETPOS, 0, 0);
wsprintf(szPos1, "Change IP address every %d minutes", Pos1);
SetDlgItemText(hwndDlg, 1044, szPos1);
}
break;
我也试过:
case WM_NOTIFY:
Pos1 = SendMessage(GetDlgItem(hwndDlg, 1045), TBM_GETPOS, 0, 0);
wsprintf(szPos1, "Change IP address every %d minutes", Pos1);
SetDlgItemText(hwndDlg, 1044, szPos1);
break;
两个代码都不起作用。首先不执行任何操作,然后挂起应用程序。
我的问题是:如何获取 Trackbar 值并将其实时显示在静态文本控件上?