mm:= integer(ss.Strings[1]);
zz := integer(ss.Strings[2]);
SetCursorPos(mm,zz);
这样有什么问题
鼠标移动和MM,ZZ不一样
本来MM=1
ZZ=3
应该移动的左上角,但他会移动的左下角,一样的代码, ZZ和MM的值一样,但鼠标移动的不一样,没次触发单击事件,鼠标移动的都不一样... 根本不是 MM ZZ的值..
a:='1222|11|45|36|78|'
xy = 分割文本 (a, “|”, )
SetCursorPos (到整数 (到整数 (xy [2]) + 到整数 (xy [4]) ÷ 2), 到整数 (到整数 (xy [3]) + 到整数 (xy [5]) ÷ 2))
帮把着局易语言代码译成DELPHI
zz := integer(ss.Strings[2]);
SetCursorPos(mm,zz);
这样有什么问题
鼠标移动和MM,ZZ不一样
本来MM=1
ZZ=3
应该移动的左上角,但他会移动的左下角,一样的代码, ZZ和MM的值一样,但鼠标移动的不一样,没次触发单击事件,鼠标移动的都不一样... 根本不是 MM ZZ的值..
a:='1222|11|45|36|78|'
xy = 分割文本 (a, “|”, )
SetCursorPos (到整数 (到整数 (xy [2]) + 到整数 (xy [4]) ÷ 2), 到整数 (到整数 (xy [3]) + 到整数 (xy [5]) ÷ 2))
帮把着局易语言代码译成DELPHI
解决方案 »
- 怎样在fastreport中按分组产生报表呢
- 打印简单问题大家瞧瞧
- 请问我要将一个label的caption传到adotable中的某个字段的某一个记录中
- TADOTable控件上有Lookup字段,还可以使用Table.Append([...])函数吗???
- 求救简单文件操作-急等
- 我的fastReport未注册,打印出来有FastReport-unregistered,各位有什么办法消除它!!
- 怎样在edit中显示一个变量的内存地址,需要使用到什么样的API函数。谢谢!在线等候!
- Delphi中TEdit
- dbgrideh中的打印控件Tprintdbgrideh在打印设置时如何自定义纸张大小?
- 请大家向我推荐几个带语法着色功能的pas文件的编辑器,
- 关于ListView1重命名问题
- stringgrid设置字体颜色
integer(ok.Strings[1]) 就不等于 122了
而是 StrToInt(ss.Strings[1])
我要把他转换成IntegerSetCursorPos(Integer(ss.Strings[1]),Integer(ss.Strings[2]));
xy = 分割文本 (a, “|”, )
SetCursorPos (到整数 (到整数 (xy [2]) + 到整数 (xy [4]) ÷ 2), 到整数 (到整数 (xy [3]) + 到整数 (xy [5]) ÷ 2))
帮把着局易语言代码译成DELPHIvar a,xy:string;
a:='1222|11|45|36|78|' ;xy:=copy(a,1,pos('|',a)-1);SetCursorPos( ord(xy[2])+ord(xy[4]) div 2 ),ord(xy[3])+ord(xy[5] div 2)
xy[5]?从上面看,没xy[5]呀,
DELPHI是从0开始的 比如 [0]
所以要把易语言转成DELPHI要把[]-1
才行
比如 易语言的[1]
delphi中是 [0
到整数 (xy [5]) ÷ 2))没有xy[5]呀,
你有没有测试过StrToInt函数?Strings显然是TStrings类型, Strings[1]和Strings[2]则是String类型。String类型转换为Integer就是用StrToInt函数。Integer(Strings[1])这样的强制类型转换,你知不知道它是怎么转换的?String变量本质上是一个指针,你这样转换是把这个指针值转换为Integer,怎么可能会得到正确的结果?
如果将xy[4]的值转换成整数类型,值不变
var a : string;
Asource:PAnsiChar;
AStrings:TStringList;
begin
a:='1222|11|45|36|78|';
Asource:=PAnsiChar(a);
AStrings:=TStringList.Create;
ExtractStrings(['|'], ['|'], ASource, AStrings);
SetCursorPos(StrToInt(Astrings[1])+ StrToInt(AStrings[3]) div 2 , StrToInt(AStrings[2])+StrToInt(AStrings[4]) div 2);
AStrings.Free;
end;刚测试通过,鼠标跑到了(29,84)的位置。