请问如何将用vc控制台写的代码结果在界面上显示出来!例如下面(简单例子)

时间:2021-06-15 07:15:44
# include<iostream>
# include<cmath>
using namespace std;
void main()
{
int sum=100;//sum第十次落地时共经历高度;
for(int i=2;i<11;i++)
sum+=100*pow(0.5,i-1)*2;
cout<<"第10次落地时共经历高度为"<<sum<<"米"<<endl;
for(int j=1;j<11;j++)
cout<<"第"<<j<<"次反弹高度为"<<100*pow(0.5,j)<<"米"<<endl;
}
现在需要把cout后面的结果一一显示在MFC对话框的控件上(比如 文本编辑控件);
详细点,谢谢!

16 个解决方案

#1


用MFC重写一遍

#2


引用 1 楼 xianglitian 的回复:
用MFC重写一遍

+1

#3


我看懂了1楼说什么了。。

#4


对话框程序,在对话框模板上放个Edit控件

#5


这种程序是DOS窗口的.当然也可以有GUI界面.
简单的比如
#include <windows.h>
....

MessageBoxA(NULL,_T("显示的内容"),_T("标题"),MB_OK);

要使用mfc以楼主的水平,还是新建一个mfc d 工程,重新开始吧.

#6


#4楼 你那样做新的输出是会覆盖原有的结果!你不觉得吗?
#5楼 我不需要用消息对话框来显示。
我是刚学着MFC,我想知道怎么去重写?能说详细点吗,我急着用,谢谢!

#7


你需要显示多行,还是用CRichEditBox吧
CString now_str.Format("第10次落地时共经历高度为%d米\n",sum);
CString str2;
m_richeditctrl.GetWindowText(str2);
str2 += now_str;
m_richeditctrl.SetWindowText(str2);

#8


添加编辑文本控件,再定义关联变量呀。

#9


引用 6 楼 ntu303 的回复:
#4楼 你那样做新的输出是会覆盖原有的结果!你不觉得吗?
#5楼 我不需要用消息对话框来显示。
我是刚学着MFC,我想知道怎么去重写?能说详细点吗,我急着用,谢谢!
你找们入门的书看看吧
有什么不明白的具体问题再过来问问

#10


哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

#11


引用 10 楼 ntu303 的回复:
哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明白呢?
如果你不会建对话框程序我说了啊你先找本书看看啊

#12


用一个list control 就是了 可以一行行 显示

#13


引用 11 楼 xianglitian 的回复:
引用 10 楼 ntu303 的回复:

哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明白呢?
如果你不会建对话框程序我说了啊你先找本书看看啊……



那这样吧,你就说说怎么让这程序界面化?
比如:
点击Button1(运行)--->就在界面上出现所说的结果?    这样说能明白我想要什么吗????
 

#14


引用 13 楼 ntu303 的回复:
引用 11 楼 xianglitian 的回复:

引用 10 楼 ntu303 的回复:

哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明……

建一个edit控件然后SetWindowText

#15



// 编辑框勾上Multi-line, Horizontal scroll, Auto HScroll, Vertical scroll, Auto VScroll, Want return属性

CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDIT1);
ASSERT(pEdit);

int sum = 100;
CString str(_T(""));

for(int i=2; i<11; i++)
{
sum += 100 * pow(0.5, i-1) * 2;
}

str.Format(_T("第10次落地时共经历高度为%d米\r\n"), sum);

pEdit->SetSel((DWORD)-1);
pEdit->ReplaceSel(str);

for(int j=1; j<11; j++)
{
str.Format(_T("第%d次反弹高度为%lf米\r\n"), j, 100 * pow(0.5, j));
pEdit->SetSel((DWORD)-1);
pEdit->ReplaceSel(str);
}

#16


谢谢,我还有很多要学!如果可以+MSN吧  yzliujian@live.cn

#1


用MFC重写一遍

#2


引用 1 楼 xianglitian 的回复:
用MFC重写一遍

+1

#3


我看懂了1楼说什么了。。

#4


对话框程序,在对话框模板上放个Edit控件

#5


这种程序是DOS窗口的.当然也可以有GUI界面.
简单的比如
#include <windows.h>
....

MessageBoxA(NULL,_T("显示的内容"),_T("标题"),MB_OK);

要使用mfc以楼主的水平,还是新建一个mfc d 工程,重新开始吧.

#6


#4楼 你那样做新的输出是会覆盖原有的结果!你不觉得吗?
#5楼 我不需要用消息对话框来显示。
我是刚学着MFC,我想知道怎么去重写?能说详细点吗,我急着用,谢谢!

#7


你需要显示多行,还是用CRichEditBox吧
CString now_str.Format("第10次落地时共经历高度为%d米\n",sum);
CString str2;
m_richeditctrl.GetWindowText(str2);
str2 += now_str;
m_richeditctrl.SetWindowText(str2);

#8


添加编辑文本控件,再定义关联变量呀。

#9


引用 6 楼 ntu303 的回复:
#4楼 你那样做新的输出是会覆盖原有的结果!你不觉得吗?
#5楼 我不需要用消息对话框来显示。
我是刚学着MFC,我想知道怎么去重写?能说详细点吗,我急着用,谢谢!
你找们入门的书看看吧
有什么不明白的具体问题再过来问问

#10


哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

#11


引用 10 楼 ntu303 的回复:
哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明白呢?
如果你不会建对话框程序我说了啊你先找本书看看啊

#12


用一个list control 就是了 可以一行行 显示

#13


引用 11 楼 xianglitian 的回复:
引用 10 楼 ntu303 的回复:

哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明白呢?
如果你不会建对话框程序我说了啊你先找本书看看啊……



那这样吧,你就说说怎么让这程序界面化?
比如:
点击Button1(运行)--->就在界面上出现所说的结果?    这样说能明白我想要什么吗????
 

#14


引用 13 楼 ntu303 的回复:
引用 11 楼 xianglitian 的回复:

引用 10 楼 ntu303 的回复:

哎,或许我说得不清楚,是这样的:上面这个简单例子在DOS运行结果我要一一在界面上显示出来!
结果大致是:
第10次落地时共经历高度为297米
第1次反弹高度为50米
第2次反弹高度为25米
.
.
.
第10次反弹高度为0.097653米

一模一样的显示;

你哪里不明……

建一个edit控件然后SetWindowText

#15



// 编辑框勾上Multi-line, Horizontal scroll, Auto HScroll, Vertical scroll, Auto VScroll, Want return属性

CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDIT1);
ASSERT(pEdit);

int sum = 100;
CString str(_T(""));

for(int i=2; i<11; i++)
{
sum += 100 * pow(0.5, i-1) * 2;
}

str.Format(_T("第10次落地时共经历高度为%d米\r\n"), sum);

pEdit->SetSel((DWORD)-1);
pEdit->ReplaceSel(str);

for(int j=1; j<11; j++)
{
str.Format(_T("第%d次反弹高度为%lf米\r\n"), j, 100 * pow(0.5, j));
pEdit->SetSel((DWORD)-1);
pEdit->ReplaceSel(str);
}

#16


谢谢,我还有很多要学!如果可以+MSN吧  yzliujian@live.cn