微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi – 我应该如何将负值传递给SendMessage并在他们期望NativeUInt时执行?

假设你有这样的代码
Result.X := ACustomMemo.Perform(EM_LINEFROMCHAR,-1,0);

Windows API声明“-1”是一个有效值,使其返回活动行.

但是,Delphi将此定义为NaiveUInt并且如果我尝试传递-1则会抱怨.

什么是最干净的解决方案?铸件?

解决方法

将-1值转换为WParaM是处理此案例的正确方法.
Result.X := ACustomMemo.Perform(EM_LINEFROMCHAR,WParaM(-1),LParaM(0));

顺便说一句,WParaM类型的delphi NativeUint定义是正确的,因为x86上的无符号32位和x64上的无符号64位.

原文地址:https://www.jb51.cc/delphi/101632.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐