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

前端之家收集整理的这篇文章主要介绍了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.f2er.com/delphi/101632.html

猜你在找的Delphi相关文章