【问题标题】:What is the resource id for column resize cursor?列调整大小游标的资源 ID 是什么?
【发布时间】:2014-05-27 09:41:33
【问题描述】:

我正在尝试模拟 clistctrl 的列调整大小光标。但我不知道我需要使用哪个资源 id。

【问题讨论】:

    标签: mfc clistctrl


    【解决方案1】:

    对于 MFC,从您的应用程序类中使用 CWinApp::LoadStandardCursor (MSDN here) 和 IDC_SIZEWE 参数:

    HCURSOR hCur = AfxGetApp()->LoadStandardCursor(IDC_SIZEWE);
    

    然后当你想显示它时,使用 WinApi SetCursor 函数:

    ::SetCursor(hCur);
    

    更新

    您引用的实际光标在通用控件库 - COMCTL32.DLL 中定义 - 可以从 Visual Studio 中查看和/或导出为 .cur 文件(只需从 Windows/System32 文件/打开 comctl32.dll ),或 - 如下所示 - 来自众多免费 resource hackers 中的任何一个:

    【讨论】:

    • 但是我需要这个游标的资源ID,参考链接visionaustralia.org/images/assistive-technology/…
    • 你能告诉我如何模拟这个光标吗?
    • @bala 好吧,您可以将其从资源黑客(或从 Visual Studio 导出)中保存,然后将该 *.cur 文件添加为项目中的光标资源,然后通过正常使用它SetCursor - 你是这个意思吗?
    • 你是对的吗?但是我已经在我的项目中使用了 comctrl,那么为什么我需要从 comctrl.dll 中保存该文件。无法通过使用自己的资源 ID 直接访问该游标?
    • @bala 好吧,理论上,您当然可以从中找到该模块的句柄和 LoadCursor,但这将依赖于资源 ID 在不同版本的 COMCTL32.DLL 中保持不变,这是无法保证的。获取资源的副本并在您自己的项目中控制它会更加健壮。
    【解决方案2】:

    IDC_SIZEWE

    LoadCursor 与 Hinstance NULL 一起使用!

    【讨论】:

      猜你喜欢
      • 2011-01-08
      • 2019-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-19
      • 2012-09-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多