none
哪位大人能帮我一下 RRS feed

  • 问题

  • 我正在开发一个移动平台下的数据处理程序,要从网络上接受数据包,然后缓存在本地的内存中。我想在屏幕上打印当前受到的包的数目,于是我设计了一个函数从队列中获得数据包的数量,然后设计了一个定时器,每隔一段时间发送一个WM_PAINT消息。在WM_PAINT消息中我做了如下的处理:
    WCHARchWBuffSize[32];
    wsprintf( chWBuffSize,L"数据区:%d%%", i );
    RECT rt;
    hdc = BeginPaint(hWnd, &ps);
    GetClientRect(hWnd, &rt);
    LoadString(g_hInst, IDS_TITLE, szTitle, MAX_LOADSTRING);
    rt.top=0;
    rt.bottom=20;
    t = DrawText(hdc, chWBuffSize, -1, &rt,DT_SINGLELINE | DT_VCENTER | DT_LEFT);
    DrawText(hdc, szTitle, _tcslen(szTitle), &rt, DT_SINGLELINE | DT_VCENTER | DT_CENTER);
    if( t == 0 )
    {
    j = GetLastError();
    }
    EndPaint(hWnd, &ps);
    但是只有第一次显示了数据区的大小,以后每次chWBuffSize的值都没有改变,我跟踪调试发现每次运行到这个函数,chWBuffSize中的内容都不相同,但是显示的值总是没有改变,不知哪位大人能帮我一下

     

    2007年8月8日 6:22

答案