说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

看到windows的开始菜单,他左边的彩色栏在cbc中是怎么做出来的?

编辑:说三道四文库 发布时间:2018-04-26 02:14
HTML文档下载 WORD文档下载 PDF文档下载
  现在有很多软件的菜单都有一个彩色栏,很好看,怎么做出来的,把我羡慕死了
得到菜单栏DC,自己画
可能是个TSpeedButton吧
如何才能加上去呢,
自己绘制出来的,需要截获菜单的绘制事件,然后处理画出你要画的东西。
给个demo你看看..是不是你要的效果?

http://gicool.com/menu.zip
按右键才会有彩色栏..呵呵..
to smartman(饺子)
哇,效果不错,能给我一个源代码吗?
wowboy@21cn.com
谢谢
我也想要啊,给我一份吧!
myoicqemail@21cn.com
小弟不才...程序中还有一些问题没有解决好...所以,

暂时就不开公源代码啦...下面把俺的实现原理说出来,

还望各位高手多多指教,帮忙解决俺的问题...在此先谢过啦!

那个弹出菜单其实是一个Form,弹出时先初始化各个菜单项的Rect,

然后通过MouseMove跟MouseDown来实现菜单的响应,由此带来

第一个问题:弹出后菜单Form处于激活状态,主Form是非激话,俺是通过

弹出后setfocus来激活主Form,但这样会造成主Form的标题栏一闪一闪的...

看上去很不舒服,于是在程序中俺的标题栏是自己画出来的,但这样就没有了

最小化、最大化、以及关闭按钮,请问如何解决?

问题二:菜单项的数据来自TPopupMenu,但却无法响应其快捷键..咋办?

问题三:俺是用主Form的MouseDown来清除菜单Form的...请问有无更好的方法?
API
使用现成的控件不就得了
用两个窗口拼接成一个.
自己做一个最大化和最小化关闭按钮就行啦!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘