【VC】滚动对话框背景图刷新问题。

图片中红色矩形框是 子对话框 添加的滚动条,根据滚动条来调整界面显示。
问题1:
对话框背景图没有刷新。。
问题2:
背景的更新还会刷新到子对话框外的界面??APPLY按钮
m_nScrollCur 是滚动条的值。。 分别使用一下两个函数分别绘图,结果都是如图一样。
OnEraseBkgnd(CDC* pDC)
{
CDC MemoryDC;
HINSTANCE hInstResource = NULL;
hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(IDB_BITMAP_LED_C),RT_BITMAP);
m_hBitmap = (HBITMAP)::LoadImage(hInstResource,MAKEINTRESOURCE(IDB_BITMAP_LED_C),IMAGE_BITMAP,0,0,0);
MemoryDC.CreateCompatibleDC(pDC);
MemoryDC.SelectObject(m_hBitmap);
pDC->StretchBlt(0,0,LED_C_WIDTH,LED_C_HEIGHT,&MemoryDC,0,m_nScrollCur,LED_C_WIDTH,LED_C_HEIGHT,SRCCOPY);
return TRUE;
}OnPaint()
{
CPaintDC dc(this);
CDC MemoryDC;
HINSTANCE hInstResource = NULL;
hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(IDB_BITMAP_LED_C),RT_BITMAP);
m_hBitmap = (HBITMAP)::LoadImage(hInstResource,MAKEINTRESOURCE(IDB_BITMAP_LED_C),IMAGE_BITMAP,0,0,0);
MemoryDC.CreateCompatibleDC(&dc);
MemoryDC.SelectObject(m_hBitmap);
dc.StretchBlt(0,0,LED_C_WIDTH,LED_C_HEIGHT,&MemoryDC,0,m_nScrollCur,LED_C_WIDTH,LED_C_HEIGHT,SRCCOPY);
}望各位大侠不吝赐教!!!对话框更新滚动条界面。。
...全文
相关推荐
ListBox 贴背景图 VC
- 考虑到性能,避免在ListBox频繁滚动时绘制背景图。通过以上步骤,你可以在VC++的ListBox控件中成功地贴上背景图,实现控件的美化。
用DirectUI让VC6.0老界面脱胎换骨:自绘框架实战指南
DirectUI是一种将传统Win32“句柄森林”简化为单窗口自绘的界面架构,所有控件均通过GDI/GDI+绘制并依靠命中测试分发事件,解决了标准控件外观固定、创建开销大的痛点。其自绘与命中分离的思想,与双缓冲、控件树管理等技术一起,构成了现代UI引擎的基石。对于仍被VC6.0束缚的老项目,基于纯Win32 SDK实现的DirectUI开源库提供了一条低风险升级路径:不更换编译器,不重写业务逻辑,仅用XML描述布局和少数核心类,就能让灰色对话框蜕变为扁平化监控面板。本文完整记录该库的编译配置、绘制/命中机制
位图背景 滚动字幕 vc 源码
**VC++源码实现**:实现位图背景滚动字幕,首先需要加载位图资源,可以使用CBitmap类。然后,创建一个窗口或对话框,将位图设置为背景。
VC 自定义时间轴控件
在这个案例中,我们关注的是一个特定的自定义控件——"VC 自定义时间轴控件"。
MFC对话框换肤程序
- 确保换肤后控件的功能不受影响,如按钮点击、滚动条滑动等仍能正常工作。- 处理好不同分辨率和屏幕尺寸下的适配问题,保证界面在不同设备上的展示效果。


界面
