“GetDlgItem”: 函数不接受 1 个参数,“->SetWindowTextA”的左边必须指向类/结构/联合/泛型类型

feibeyond 2012-06-28 11:00:10
void age2(double a)
{
if(a<=0.3)
GetDlgItem(IDC_EDITR)->SetWindowText("一般");
else if(a==0.5||a==0.4)
GetDlgItem(IDC_EDITR)->SetWindowText("良好");
else
GetDlgItem(IDC_EDITR)->SetWindowText("优秀");
}
void judge2(double a,double b,double c)
{
if(a>b)
if(a>c)
age2(a);
else
{
a=c;
age2(a);
}
else if(b>c)
{
a=b;
age2(a);
}
else
{
a=c;
age2(a);
}
}

请高人指教!!!
...全文
573 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cibiren2011 2012-06-28
  • 打赏
  • 举报
回复
是的, 应该漏掉了函数作用域,是对话框的成员函数
void CMyDialog::age2(double a)
{
//......

}
无趣 2012-06-28
  • 打赏
  • 举报
回复
把age2做成对话框的成员函数,不要全局函数,如下:

CMyDialog::age2(...)

当然,你也可把CMyDialog对象穿进去。void age2(CDialog* pDlg, double a)
无趣 2012-06-28
  • 打赏
  • 举报
回复
judge1也作成成员函数,或者也加个pDialog参数。
feibeyond 2012-06-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

把age2做成对话框的成员函数,不要全局函数,如下:

CMyDialog::age2(...)

当然,你也可把CMyDialog对象穿进去。void age2(CDialog* pDlg, double a)
[/Quote]
受教了,谢谢!改过之后这个问题解决了,但是该如何实现judge1调用age1呢?
feibeyond 2012-06-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

把age2做成对话框的成员函数,不要全局函数,如下:

CMyDialog::age2(...)

当然,你也可把CMyDialog对象穿进去。void age2(CDialog* pDlg, double a)
[/Quote]
受教了,谢谢!改过之后这个问题解决了,但是该如何实现judge1调用age1呢?
feibeyond 2012-06-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

这个怎么可能会漏呢?
你写函数的习惯不好啊
应该是先输入void然后把CMyDialog粘过来
然后敲::从列表里选成员函数
这样就不会出错了
[/Quote]
我的想法是,judge1调用age1,加上CMyDialog的话该如何调用?
  • 打赏
  • 举报
回复
这个怎么可能会漏呢?
你写函数的习惯不好啊
应该是先输入void然后把CMyDialog粘过来
然后敲::从列表里选成员函数
这样就不会出错了
笨笨仔 2012-06-28
  • 打赏
  • 举报
回复
控件ID不存在或写错了-“IDC_EDITR”

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧