问题求助,鸡鸡鸡鸡

来源:互联网  时间:2016/7/7 6:22:37

关于网友提出的“ 问题求助,鸡鸡鸡鸡”问题疑问,本网通过在网上对“ 问题求助,鸡鸡鸡鸡”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 问题求助,鸡鸡鸡鸡
描述:

我在控件中开了一个线程,然后在线程中想往一个矩形里填充颜色,但是运行的时候,什么都没填充上去,求解答。

unsigned __stdcall CActiveXCtrl::ThreadOnDraw(void * pParam)
{
    CActiveXCtrl* pThis = reinterpret_cast(pParam);
    pThis->m_bOnDrawThreadOn = true;
    
    pThis->NewBrush.CreateSolidBrush(RGB(100,100,100));
    
    int i = 0;
    while(pThis->m_bOnDrawThreadOn)
    {        
        ::GetWindowRect(pThis->hWnd, &pThis->ret);
        CDC* dc = pThis->GetDC();
        
        CRect rt;
        rt.left = pThis->ret.left;
        rt.top = pThis->ret.top;
        rt.bottom = pThis->ret.top + 240;
        rt.right = pThis->ret.left + 320;
        dc->FillRect(&rt,&pThis->NewBrush);
        Sleep(100);
    }
    _endthreadex(0);
    return 0;
}

解决方案1:

绘图操作用通过OnPaint函数来完成
你可以在线程中改变控制绘制颜色的变量
然后发消息让主窗口更新

上一篇SetWindowPos 对话框
下一篇vc 代码调用打印预览工具栏里的打印
明星图片
相关文章
《 问题求助,鸡鸡鸡鸡》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)