• 全部
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

怎样显示一连串的字符!(菜鸟那份!)

gigi_csdn 2002-05-09 08:04:38
有一个int i=4;

在对话框中显示i,该如何?
...全文
19 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wlz47 2002-05-10
其实可以自动完成的,利用UpdateData(BOOL)函数。
这里涉及到MFC独特的被称为Dialog Data Exchange (DDX)的机制

在这种机制中,我们通过ClassWizard将某个成员变量与控件“绑”在一起,这样成员变量就与控件对应起来了,从而可以使用DDX机制在控件里显示成员变量的值了
具体办法是选中ClassWizard的Member Variables标签,在“Class Name”一栏选中你的对话框类,此时在下面的大列表里就列出了对话框各个空间的ID号,通过“Add Variables...”加入与某个控件“绑定”的成员变量(比如,这里的变量为i),BTW:加入变量后,还可以设定这些变量的取值范围。

1。DDX机制显示控件的初值:
可以在对话框类的构造函数中对对话框对象的成员变量(比如变量i)进行初始化,在对话框显示之前,DDX机制将成员变量的值传递给对话框中的控件。这个过程在成员函数DoModal或Create被调用的过程中发生。而类CDialog中对OnInitDialog成员函数的默认自动调用了类CWnd成员函数UpdateData来初始化对话框中的控件,因此当对话框刚刚显示出来时,那些与控件对应的变量(它们一般已在你的构造函数中被初始化)就会自动在控件中显示它们的初始值。

2。运行过程中改变控件的值:
分两种情况:
A. 如果程序运行时需要用户输入成员变量(比如i)的值,
在控件中输入某个值(比如100)后,如果调用了UpdateData(TRUE),该函数将通过DDX机制自动将控件中输入的值(100)传递给成员变量,总之这个函数被调用后所有与各个控件绑定的成员变量都会被赋值成控件中输入的值。
B. 需要将程序计算的结果显示在控件中:
比如成员变量经过计算后得到的值是12345,要把这个值显示在与这个成员变量绑定的控件上,可以在计算完成后调用UpdateData(FALSE),该函数就通过DDX机制自动在控件中显示出与之对应的成员变量的值来,同样的调用这个函数后所有的控件都会被显示出当时与它们对应的成员变量的值来。

总之,成员函数UpdateData带有一个布尔类型的参数,如果该参数为FALSE,函数UpdateData将成员变量的值传递给控件;而如果该参数为TRUE,函数UpdateData将进行相反的过程。
回复
chenhq 2002-05-09
SetDlgItemInt(IDC_XXXXX,i);
IDC_XXXXX是你要显示数据得控件ID号
回复
xhwu3721 2002-05-09
你可以在編輯框中顯示,如下:
char szID[20];
sprintf( szID, "%d", i );
m_edit.SetWindowText(szID);


回复
oraclese 2002-05-09
就是给Static一个新ID然后再给他一个Value变量,然后就可以改变变量来改变显示
回复
晨星 2002-05-09
为显示控件添加一个整形变量也可以。
回复
oraclese 2002-05-09
你是在对话框还是编辑框中显示压
回复
gigi_csdn 2002-05-09
加到50了.
回复
rick1126 2002-05-09
还是使用
char szID[20];
sprintf( szID, "%d", i );
比较好, 虽然不符合DDX, 不过速度快.
回复
ydaye 2002-05-09
to winne_ll(feiyang),手误了吧?你是不是这个意思:
str.Format("%d",i);
啊?
回复
iluzhen 2002-05-09
CString str;
str.Format("%s",i);
AfxMessageBox(str);
回复
winne_ll 2002-05-09
CString str;
str.Format("%s",i);
SetWindowText(&str);
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2002-05-09 08:04
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……