自绘控件内嵌滚动条问题,高手进!

hello0204 2005-09-20 01:03:41
如何做到自绘内嵌滚动条,现有
1。隐藏,自己创建一个模拟的滚动条,但是这样用spy++一看就露馅了,不专业。
2。绘制非客户区,像codeproject上coolsb一样,子类化窗口,但是在98下不行啊,而且和1有
个共同的特点就是不好动态的根据内容显示隐藏滚动条阿

请教各位高手,怎样做到自绘这种滚动条的,最好spy++等工具捕捉不到滚动条
...全文
643 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
老夏Max 2005-09-20
  • 打赏
  • 举报
回复
参考:
http://www.codeguru.com/Cpp/controls/controls/coolcontrols/article.php/c8589
http://www.codeguru.com/Cpp/controls/controls/article.php/c5229
hello0204 2005-09-20
  • 打赏
  • 举报
回复
现在关键是我需要的不是自定义控件。只需在现有控件基础上自绘滚动条,比如一个CComboBox,一个CTreeCtrl,有个最大的疑问是我在WM_NCPAINT中什么都不画,也不调用缺省的窗口处理函数,刚开始的时候没有显示滚动条,但是如果我滚动控件里面的内容,或者在滚动条的那个地方点击一下,系统的滚动条就跑出来了,这个是谁画的,我在WM_NCPAINT里一直什么都不做啊?
老夏Max 2005-09-20
  • 打赏
  • 举报
回复
将你的自定义控件从CScrollView类继承,这样就可以直接使用滚动条了。在代码方面将在OnPaint中做的事情移到OnDraw中做即可!如果是Dialog形式的自定义控件,可以直接从CFormView继承,因为CFormView是从CScrollView派生的。
老夏Max 2005-09-20
  • 打赏
  • 举报
回复
上面的那个例子好好看看吧。
老夏Max 2005-09-20
  • 打赏
  • 举报
回复
http://www.codeguru.com/forum/showthread.php?t=356727

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧