subject_17801.htm
来自「一些关于vc的问答」· HTM 代码 · 共 54 行
HTM
54 行
<p>
序号:17801 发表者:mini 发表日期:2002-10-15 17:33:50
<br>主题:ID_RADIO的用法
<br>内容:建立一个对话框,设置两个选项。RADIO1(30度角)和RADIO2(60度角)。<BR>点击任一项可以将角度值带入一公式。<BR>在MFC设置里加入BN— CLICKED。现在不知道怎么把RADIO与公式变量相连。<BR>void Dlg::OnRadio1() <BR>{ Radio=30;<BR> UpdateData(false); <BR>}<BR>如果你知道答案,请告诉我。谢谢!<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:Norton AntivVirus 回复日期:2002-10-15 17:38:16
<br>内容:将公式中的度数用变量代替,在头文件中声明该变量<BR>int m_nDegree;<BR>点击30度button, m_nDegree = 30;<BR>点击60度Button, m_nDegree = 60;<BR><BR>然后进行计算就行了!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:淡淡 回复日期:2002-10-15 17:40:03
<br>内容:应该用UpdateData(TRUE);吧<BR> 参数FALSE将变量的值显示在控件上<BR>TRUE将用户修改的控件值传给变量。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:徐景周 回复日期:2002-10-15 17:40:51
<br>内容:设一变量a,如radio1是30时,当选中它时,a=30,直接绘制既可。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:淡淡 回复日期:2002-10-15 17:43:28
<br>内容:用AppWizard给radio控件添加(即对应)整型变量。在消息响应函数里就可以用这个类的数据成员了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:mini 回复日期:2002-10-15 20:24:35
<br>内容:谢谢大家。如果成功,我修改后会将正确的答案公布,并将分数给于最正确的一位。同时我很高兴,通过网络有这么多人的帮助。衷心感谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:mini 回复日期:2002-10-15 23:05:07
<br>内容:参见“考考你的本事”MINI<BR>目前编译成功,按右键出现对话框,选择RADIO1或RADIO2, 按OK键后屏幕空白。<BR>void CWl1View::OnRButtonDown(UINT nFlags, CPoint point) //VIEW。CPP<BR>{ Dlg dlg;<BR> int ret=dlg.DoModal();<BR> UpdateData(FALSE);}<BR><BR>void Dlg::OnRadio1() //CLASS DLG <BR>{ void MyDraw(); }<BR><BR>void CWl1View::MyDraw(CDC* pDC)//VIEW。CPP<BR>{ <BR>pDC->MoveTo(600,100);<BR> pDC->LineTo(750,50);}<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:徐景周 回复日期:2002-10-16 10:35:52
<br>内容:按OK键后屏幕空白,我想你是少加了一句判断,如下:<BR>void CWl1View::OnRButtonDown(UINT nFlags, CPoint point) //VIEW。CPP<BR>{ Dlg dlg;<BR> if(dlg.DoModal()==IDOK)<BR> UpdateData(FALSE);<BR>}<BR><BR>另外,如果你的MyDraw是在视里绘制的话,建议你在对话框中加入一个public类型的int GetRadio(int nRadio)涵数,返回所选中是第几个radio控件,在当dlg.DoMdal==IDOK是,用对话框中的GetRadio来获取所返回值,用一个switch()语句来判断是选中第几中MyDraw()既可。<BR>如下:<BR>假设你已经在Dlg 对话框类中加了一个GetRadio()涵数来获取选中第几个radio控件<BR><BR>void CWl1View::OnRButtonDown(UINT nFlags, CPoint point) //VIEW。CPP<BR>{ Dlg dlg;<BR> if(dlg.DoModal()==IDOK)<BR> {<BR> int i=dlg.GetRadio();<BR> Switch(i)<BR> {<BR> case 1:<BR> MyDraw();<BR> break;<BR> }<BR> UpdateData(FALSE);}<BR><BR>}<BR><BR><BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:fl 回复日期:2002-10-16 14:15:09
<br>内容:MyDraw()可以直接调用吗??为什么我的程序error C2660: 'MyDraw' : function does not take 0 parameters<BR>改成MyDraw(CDC *pDC)后 错误为<BR><BR>G:\代码\MYMFC\radio1\radio1View.cpp(119) : error C2065: 'pDC' : undeclared identifier<BR>G:\代码\MYMFC\radio1\radio1View.cpp(119) : error C2275: 'CDC' : illegal use of this type as an expression<BR> f:\microsoft visual studio\vc98\mfc\include\afxwin.h(636) : see declaration of 'CDC'<BR>Error executing cl.exe.<BR>为什么 ??请徐大侠指教!!!!!!!!!!!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?