|
本帖最后由 stanleypan 于 2019-9-26 14:36 编辑
由于excel2013及之后版本已经不再用GDI或GDI+去Draw了, Excel client都会自动刷新。消息基制也有所变化。原因是:
http://stackoverflow.com/questio ... he-paint-the-screen
'Office 2013 is using DirectWrite, Direct2D and DXGI for putting ink on the screen. As they do that, they almost entirely avoid using GDI, hence GetDC/BeginPaint/etc. never been called.
'
'See this blog:
'http://blogs.msdn.com/b/murrays/archive/2012/07/29/office-adopts-new-windows-display-technology.aspx
VB或VBA目前 对 DirectWrite, Direct2D and DXGI 的支持有很多问题,现在网上能找到的例子基本都是C# , VB.Net 源码 , 所以要想稳定实现只有更换编程工具了。 | 用Delphi 或其它语言可能会更好的解决问题。
用VB只能换一种思路来实现来避免闪屏的问题。 用到了RIBBON的动态菜单,子类化。窗体最小化时没有处理。基本上是XColor 的延续。支持不同比例缩放,左右上下滚屏,屏幕移动,支持API Area,Gradient, Edge , API Line画屏。稳定性还行。同时支持Ribbon菜单和传统菜单。
历史记录:
XcolorHighlight 行列高亮加载宏2013重新发布!
http://club.excelhome.net/thread-1078593-1-1.html
模仿XColor 功能的加载宏! 2005
http://club.excelhome.net/thread-91821-1-1.html
|
评分
-
1
查看全部评分
-
|