VC改变按钮标题调用GetDlgItem(IDC_BUTTON1)->SetWindowText("开始"); 编译器报错说GetDlgItem函数只能有
5个回答
展开全部
来回用几个函数就可以了,你说的我不太明白,你用下面几个函数就可以实现了:
1:设置按纽是否下压式(FALSE下压 TRUE正常)
GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
2:这是按纽显示内容(此时为隐藏)
GetDlgItem(IDC_BUTTON1)->SetWindowText("隐藏");
3:设置复选框是否被选中(FALSE未被选中 TRUE选中)
((CButton *)GetDlgItem(IDC_CHECK1))->SetCheck(TRUE);
4:要想实现复选框来控制按纽的状态,你可以调用他的单击事件,然后再用上面的1~3方法实现。
例如:
//现在是一个复选框和一个按纽
//在OnInitDialog进行初始化
GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
((CButton *)GetDlgItem(IDC_CHECK1))->SetCheck(TRUE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("显示");
//在复选框的单击事件里添加
void CMyDlg::OnCheck1()
{
if(((CButton *)GetDlgItem(IDC_CHECK1))->GetCheck())
{
GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("显示");
}
else
{
GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("隐藏");
}
}
1:设置按纽是否下压式(FALSE下压 TRUE正常)
GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
2:这是按纽显示内容(此时为隐藏)
GetDlgItem(IDC_BUTTON1)->SetWindowText("隐藏");
3:设置复选框是否被选中(FALSE未被选中 TRUE选中)
((CButton *)GetDlgItem(IDC_CHECK1))->SetCheck(TRUE);
4:要想实现复选框来控制按纽的状态,你可以调用他的单击事件,然后再用上面的1~3方法实现。
例如:
//现在是一个复选框和一个按纽
//在OnInitDialog进行初始化
GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
((CButton *)GetDlgItem(IDC_CHECK1))->SetCheck(TRUE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("显示");
//在复选框的单击事件里添加
void CMyDlg::OnCheck1()
{
if(((CButton *)GetDlgItem(IDC_CHECK1))->GetCheck())
{
GetDlgItem(IDC_BUTTON1)->EnableWindow(TRUE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("显示");
}
else
{
GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON1)->SetWindowText("隐藏");
}
}
展开全部
你说的那个是使用 MFC 类开发的用法,使用 Platform SDK 应该是这样:
SetWindowText(GetDlgItem(hWnd, IDC_BUTTON1), "开始");
或者下面的都可以:
SetDlgItemText(hWnd, IDC_BUTTON1, "开始");
SendMessage(GetDlgItem(hWnd, IDC_BUTTON1), WM_SETTEXT, NULL, "开始");
SendDlgItemMessage(hWnd, IDC_BUTTON1, WM_SETTEXT, NULL, "开始");
hWnd 是 IDC_BUTTON1 所在的窗口的句柄,改成你的变量名。
SetWindowText(GetDlgItem(hWnd, IDC_BUTTON1), "开始");
或者下面的都可以:
SetDlgItemText(hWnd, IDC_BUTTON1, "开始");
SendMessage(GetDlgItem(hWnd, IDC_BUTTON1), WM_SETTEXT, NULL, "开始");
SendDlgItemMessage(hWnd, IDC_BUTTON1, WM_SETTEXT, NULL, "开始");
hWnd 是 IDC_BUTTON1 所在的窗口的句柄,改成你的变量名。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看你用的那个版本了,是windows api版 还是mfc版
区别是mfc版的大部分和类对象关联所以不一定需要hwnd参数了
多打几个字 [this->]调用类里的 或着 用[::]调全局的
还有看看IDC_BUTTON1有没有定义
而且button可以直接添加个变量去操作
区别是mfc版的大部分和类对象关联所以不一定需要hwnd参数了
多打几个字 [this->]调用类里的 或着 用[::]调全局的
还有看看IDC_BUTTON1有没有定义
而且button可以直接添加个变量去操作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用SetDlgItemText(IDC_BUTTON1,"开始"); 就是了。。。何必那么麻烦呢?
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询