首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

新人memo中的数据转换有关问题

2013-04-20 
新人求教:memo中的数据转换问题学习delphi不久,控件属性操控能力不是很强,现在遇到一个很急 的问题,明天要

新人求教:memo中的数据转换问题
学习delphi不久,控件属性操控能力不是很强,现在遇到一个很急 的问题,明天要给老师做汇报时需要演示一下;
主要作用就是在数控机床操控时   将xy的坐标数值 之前加上G01  x   y  ,单击 转换 按键后  memo1里的内容 就转换问了memo2 中的样子

新人 分不多啊,多谢帮助!



[解决办法]
var
  i : integer;
  s : string;
begin
  memo2.clear;
  for i := 0 to memo1.lines.count - 1 do
  begin    
    s := memo1.lines.string[i];
    if pos('交线数据', s) < 1 then
      s := 'G01 X' + StringReplace(s, ' ', ' Y', [rfReplaceAll]); //此处的' '换成你memo1中的分隔符即可
    memo2.lines.add(s);
  end;
end;
[解决办法]
2# 的可能有问题哦, StringReplace(s, ' ', ' Y', [rfReplaceAll]) 万一有多个空格呢?
还是把两个值取出来把, 加一下就行了
s := 'G01 X' + str1 + '  Y' + str2;
[解决办法]
引用:

多谢楼上两位,功能已经实现,但是  s := memo1.lines.string[i]; 有错误
网上找的程序将string[i]改成了strings[i]
程序正常

但是出现一个问题memo1对应的 回车行 在memo2也出现了 G01 x

请问一下这个如何 解决啊


var
  i : integer;
  s : string;
begin
  memo2.clear;
  for i := 0 to memo1.lines.count - 1 do
  begin    
    s := memo1.lines.string[i];
    if (pos('交线数据', s) < 1) and (Trim(s) <> '') then
      s := 'G01 X' + StringReplace(s, ' ', ' Y', [rfReplaceAll]); //此处的' '换成你memo1中的分隔符即可
    memo2.lines.add(s);
  end;
end;

热点排行