【问题标题】:Delphi shell context-menu, how to draw iconDelphi shell上下文菜单,如何绘制图标
【发布时间】:2012-07-11 10:58:36
【问题描述】:

我可以获得一些代码来显示如何在右键单击上下文菜单上绘制位图/图标吗?

我已经有用于上下文菜单的 DLL 的工作代码,但它只是文本。此处示例:http://www.marcocantu.com/code/md5/TODOSHLL.htm

【问题讨论】:

    标签: delphi shell contextmenu


    【解决方案1】:

    seems 你可以简单地使用SetMenuItemBitmaps API。

    编辑:Here 是一个 Delphi 示例。

    编辑 2:警告:我刚刚注意到 Delphi 示例泄漏了位图句柄,最终可能会导致系统崩溃。位图应该只在对象的构造函数中加载一次(最好从它自己的资源中加载,而不是从文件系统中加载)并在析构函数中释放。

    【讨论】:

    • 或者你可以使用InsertMenuItem而不是InsertMenu我猜想一下子就搞定了。
    • 谢谢!让它与 SetMenuItemBitmaps 一起工作(InsertMenuItem 似乎要复杂得多)。但是..如果我在那次调用之后释放位图,那么它就不会显示。不确定 DLL 代码中释放位图的析构函数是什么:?
    • 您可以在 TToDoMenu 类中覆盖 constructor/destructor。或者加载initialization中的位图并在单元的finalization部分中释放它。
    • 但是DLL中没有finalization
    • 您可以在一个单元中add it
    猜你喜欢
    • 2021-07-29
    • 2011-04-16
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-22
    • 1970-01-01
    相关资源
    最近更新 更多