|
PopupMenuWindow - XPopupMenuWnd_AddItemRes |
void XPopupMenuWnd_AddItemRes(HWINDOW hWindow,int id,wchar_t *pText,int parentId,int uFlags,int resID,wchar_t *pResType); |
请问下:pResType:资源类型 就是指在 RC 定义中的资源名称是吧?比如 BITMAP,PNG 等等什么的,对吗?
不好意思,我是用易语言的,易语言官方程序是没有 PE 资源的,所以类似这样的接口不是理解的很清晰。。。
同时,如果我上述理解正确的话,对于易语言这样的编程语言,也就意味着我无法使用 “从资源添加图片” 这样的接口,当然我还是可以使用从外部文件添加的方式,比如 XPopupMenuWnd_AddItemImage。这样的话,无疑给使用上造成了很大的局限性。。。
还有一点,即使是使用 C/C++ 这样的语言,像这样的接口,是不是也无法调用外部资源文件中的资源呢?(或许是我理解的不对,但是看这个接口貌似只可以调用工程内部的资源数据,因为没有类似 LoadImage 函数中 hinst 可选参数来指定模块句柄。。。)
易语言的图片资源是专有的,其数据类型为字节集,实际上就是将图片的文件数据完整存储了下来,通过相应的函数,是可以获取到 易语言图片资源 的 图片句柄 的。。。
因此,如果可能的话,十分建议您将类似的接口,不要区分什么 从文件调用的接口 和 从资源调用的接口,而统一设置为:
设置图片 (图片句柄) 这样的格式,因为无论从 内部资源、外部资源还是外部独立文件 获取,在最终 API 里传递的还是图片句柄,如果真可以这样的话,那么无论是上面提到的 从外部资源文件添加,还是用于 易语言等类似语言,都随之迎刃而解了。。。
同时,如果这样做,也简化了对外开放接口的数量,在使用上也更简单明了了。。。比如:
XPopupMenuWnd_AddItem、XPopupMenuWnd_AddItemImage、XPopupMenuWnd_AddItemRes
就可以用一个接口实现,其中图片句柄如果传递 0 就表示没有图片,否则传递有效句柄即可,何必要区分图片从哪里来呢??
当然,我只是从使用的感觉上提出这点想法,而实际能否这样实现只有作者才清楚,如果原理根本不是这样或者实现起来很困难,就当我没说好了。。。
谢谢您开发出这么好的东西,最重要还是免费滴
|
|