问题标签 [lparam]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - TVITEM LPARAM 存储字符串
我有一个树视图,列出了放在上面的文件。
当我创建一个新的树视图项目时,我想将文件的地址作为字符串存储在该项目中,并在以后为各种邪恶目的检索它。
查看 Microsoft 文档中的TVITEM 结构,显然LPARAM
是存储值的地方:
参数
所以,我已经这样做了:
然后,当我尝试检索我的价值时......
...我只是得到垃圾,表明我的指针超出范围或正在打盹什么的。该指针的大小始终为 4。
这是做我想做的事情的正确方法吗?如果是这样,发生了什么?
c++ - LPARAM 在 TVITEM 中不断变化
我将一堆项目添加到树视图中,其中存储了一个字符串lParam
,如下所示:
添加完所有这些后,我回来检查(在不同的函数中):
...并且 LPARAM 已重置为最后添加的项目的值。
所以,如果我添加one, two, three, four
具有相似lParam
值的项目,那么在我检查它们都lParam
具有four
. (有时,会有垃圾值。)
这里显然有问题,而且可能很容易修复,但经过几个小时的试验,我找不到问题所在。帮助!
winapi - 赢32。如何将 POINT 转换为 LPARAM
我需要发送WM_MOUSEWHEEL
消息。如何转换POINT
为LPARAM
?
c# - 如何在 C# 中将 LParam 转换为 Struct
我有以下 c++ 结构
并转换为 C# 类
我使用以下两种方法在 WndProc 中转换 LParam。
但是,它没有成功,也没有发出常规错误消息,而是在“输出”窗口中收到消息“mscorlib.dll 中发生'System.TypeLoadException'类型的第一次机会异常”。谁能告诉我我的转换有什么问题?
c++ - 带有 int 的 SendMessage 作为 lParam 或 wParam 的参数?
假设我想向我的 WndProc 发送一条消息,但我还想发送一个整数。
我的 WndProc 会收到它吗?然后我想将该 lParam(integer) 发送到一个函数。
如何将整数作为 lParam 或 wParam 发送,然后将该整数作为参数重新发送到函数?
c++ - lParam 或 WCHAR[] 有问题
首先,这个函数被多次调用。应该注意的是 wString[] 确实包含字符常量 '\n'。
最后,发送一条 WM_PAINT 消息,而 nLines 应为非零,因为日志包含多个 '\n'。我的 WndProc 接收消息并处理它。
之后,使用(假定的)非零 int 作为 lParam 调用 OnRender。
由于某种原因,在 OnRender 函数中,nLogLines 的值为 0。有什么问题?
winapi - 将指针投射到/来自 LRESULT
我正在寻找有关此 Windows 编程习语的确认,我认为许多不同类型的“句柄”不仅作为 LRESULT 对象而且作为 lParam 和 wParam 对象传递,这是否正确?
我猜,只要我们知道 LRESULT 或 lParam/wParam 中的“什么”类型的句柄,我们就可以将其转换回它。
例如
正确的?
这是“正确的”吗?任何人都可以为我和 StaticOverflow 社区提供关于这种技术/习语的简短论文吗?
问题:我们应该只返回 lParam(或只返回 wParam)值吗?有没有应该知道的陷阱?LRESULT 和 LPARAM 都是 LONG_PTR 类型,它们是 32 位或 64 位整数。我不是一个经验丰富的 C 程序员,但似乎这些整数只是被用作“缓冲区”,程序员后来在使用之前将其转换为“真实”类型......听起来准确吗?
c# - SendMessage 到窗口,lparam 改变?(间谍++,C#)
我正在尝试将 Ctrl + C 命令(复制文本)发送到自定义句柄,因此它没有获得焦点。
我查看了 Spy++ 中的消息:
所以我试图重现这个 C# (WM_GETDLGCODE = 0x0087):
但是,结果,Spy++ 告诉我:
我不明白 lParam 的变化。Ctrl + C 命令不执行。一个带有鼠标点击的 PostMessage 成功。我错过了什么吗?
pointers - 使用 CTreeCtrl 设置/获取 lParam 值
我正在使用 CTreeCtrl 来显示一些数据。对于树中的每个条目,我都有一些关联的数据,我将它们保存在一个结构中。通过将指向结构的指针放在树中每个条目的 lParam 值中,我将这些数据与项目一起保存。
这是我向树中添加条目的代码:
本质上,这个函数递归地向树中添加一个元素及其子元素。_pElement
我通过外部。这是我班级的成员变量,所以我知道除非程序结束,否则它不会被破坏。
当用户在树视图中选择一个条目时,我处理 selchanged 消息:
pElement
总是NULL
。我调试了程序,它似乎lParam
也为零。
我做错什么了吗?我知道我的结构的内存没有被释放。我正在将条目添加到树中是否有问题?
任何帮助,将不胜感激。
python - 如何用python模拟(x,y)位置的桌面点击?
我正在尝试单击桌面上的某个位置,我正在使用带有 win32 api 的python,我正在使用 python 32 位但我的计算机是 64 位计算机。我相信 lParam 变量没有保持我期望的值,而且我仍然对这个变量本身有点困惑,假设我从 wintypes 导入它,谁能告诉我如何使用它?为什么我下面的功能不起作用?
我有以下功能,这似乎不起作用: