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

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

请教各位高手,怎样做到自绘这种滚动条的,最好spy++等工具捕捉不到滚动条
...全文
573 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
老夏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
回复
发帖
界面
创建于2007-09-28

1.5w+

社区成员

VC/MFC 界面
申请成为版主
帖子事件
创建了帖子
2005-09-20 01:03
社区公告
暂无公告