我想将程序运行过程中的运行数字输出给编辑框,显示给用户,我是这样做的
hWnd->Invalidate(true);
m_Total=OldDis; //就想在这里给编辑框赋值
hWnd->UpdateData(false);
其中m_Total是编辑框的成员变量,oldDis是运行过程中产生的结果,但是运行中编辑框的值一直不变是0
具体代码如下:
void CTextBoxView::OnButton1()
{
// TODO: Add your control notification handler code here
Thread_Info.hWnd=m_hWnd;
Worker=AfxBeginThread(ShowValue,(LPVOID)&Thread_Info);
//m_Value=20;
UpdateData(false);
}UINT CTextBoxView::ShowValue(LPVOID lparam)
{
THREAD_INFO * infor=(THREAD_INFO *)lparam;
CTextBoxView * hWnd=(CTextBoxView *)CWnd::FromHandle((HWND)infor->hWnd);
for(int i=0;i<15;i++)
{
hWnd->m_Value=(float)i;
hWnd->UpdateData(false);
Sleep(50);
}
return 0;
}
其中m_value是编辑框的关联变量!
为什么编辑框中的值一直不变 0。
hWnd->Invalidate(true);
m_Total=OldDis; //就想在这里给编辑框赋值
hWnd->UpdateData(false);
其中m_Total是编辑框的成员变量,oldDis是运行过程中产生的结果,但是运行中编辑框的值一直不变是0
具体代码如下:
void CTextBoxView::OnButton1()
{
// TODO: Add your control notification handler code here
Thread_Info.hWnd=m_hWnd;
Worker=AfxBeginThread(ShowValue,(LPVOID)&Thread_Info);
//m_Value=20;
UpdateData(false);
}UINT CTextBoxView::ShowValue(LPVOID lparam)
{
THREAD_INFO * infor=(THREAD_INFO *)lparam;
CTextBoxView * hWnd=(CTextBoxView *)CWnd::FromHandle((HWND)infor->hWnd);
for(int i=0;i<15;i++)
{
hWnd->m_Value=(float)i;
hWnd->UpdateData(false);
Sleep(50);
}
return 0;
}
其中m_value是编辑框的关联变量!
为什么编辑框中的值一直不变 0。
解决方案 »
- 在VC6中如何转换XSL和XML
- 使用虚拟打印机Microsoft Office Document Image Writer出现的问题
- !!!实现“目标另存为”或者windows默认下载功能!!!
- 【每月都散分】 留下300分备用提问,其余全贡献出来 2
- 在VC6.0中使用cout出现问题,请求解决方法
- 我用CreateProcess运行了一个批处理文件,但是我不想让它在后台运行或者不显示那个窗口,应该怎么做?
- 有谁知道去那里下载 《opengl编程权威指南》这本书?
- 求画个坐标系
- 线程内怎么知道本线程ID?
- 简单问题:自己做的简单链表,帮忙看看有毛病否?
- vc6的dll怎么移植到vc2005创建对话框失败
- 运行多个程序,DLL会被加载几次?
{
// TODO: Add your control notification handler code here
Thread_Info.hWnd=this;
Worker=AfxBeginThread(ShowValue,(LPVOID)&Thread_Info);
//m_Value=20;
UpdateData(false); } UINT CTextBoxView::ShowValue(LPVOID lparam)
{
THREAD_INFO * infor=(THREAD_INFO *)lparam;
CTextBoxView * hWnd=(CTextBoxView *)infor->hWnd;
for(int i=0;i <15;i++)
{
hWnd->m_Value=(float)i;
hWnd->UpdateData(false);
Sleep(50);
}
return 0;
} 试试
CTextBoxView *pView =(CTextBoxView *)lparam;
OR
Thread_Info.hWnd=this; //hWnd是CTextBoxView * hWnd定义的指针变量
THREAD_INFO * infor=(THREAD_INFO *)lparam;
CTextBoxView * hWnd=(CTextBoxView *)infor->hWnd;
http://blog.vckbase.com/arong/archive/2009/05/17/15578.html
如:
UINT CTextBoxView::ShowValue(LPVOID lparam)
{
THREAD_INFO * infor=(THREAD_INFO *)lparam;
CTextBoxView * hWnd=(CTextBoxView *)CWnd::FromHandle((HWND)infor->hWnd);
for(int i=0;i <15;i++)
{ hWnd->GetDlgItem(IDD_TEST).SetWindowText(...)
Sleep(50);
}
return 0;
}