R
Riantwin
Unregistered / Unconfirmed
GUEST, unregistred user!
在Delphi中用什么方式实现Foxpro中的宏替换呢?我知道在Delphi中没有宏替换这一说,
但是有什么好的办法实现同样的功能呢?我在Delphi大富翁论坛搜索过,没有找到我想要的
答案。
程序设计目的:寻找到FindText字符串后,用ReplaceText字段的内容替换。
有一个数据库Replace,字段结构和数据库内容如下
FindText ReplaceText
_______________________________________________
Title DBEditTitle.Text
PageNum DBEditPageNum.Text
........
在Foxpro中可以用如下语句实现:
use Replace
locate for FindText='Title'
if found()
Replace_var=ReplaceText
Endif
//应用ReplaceText字段的值
?&ReplaceText
Delphi实现方法:
//假设DBEditTitle.Text:=“带你进入P4时代”;
Table1.Open;
Table1.First;
while not Table1.Eof do
Begin
FindText:=Table1.FieldByName('FindText').AsString;
ReplaceWith:=Table1.FieldByName('ReplaceText').AsString;
//在FindText处用ReplaceText的内容替换,为了简化,此处用ShowMessage显示变量值。
ShowMessage(ReplaceText);
ShowMessage(DBEditTitle.Text);
Table1.Next;
End;
运行结果ShowMessage(DBEditTitle.Text)显示的是“带你进入P4时代”,ShowMessage(ReplaceText)
显示的是“DBEditTitle.Text”。怎样才能实现“Title”用“带你进入P4时代”替换?
但是有什么好的办法实现同样的功能呢?我在Delphi大富翁论坛搜索过,没有找到我想要的
答案。
程序设计目的:寻找到FindText字符串后,用ReplaceText字段的内容替换。
有一个数据库Replace,字段结构和数据库内容如下
FindText ReplaceText
_______________________________________________
Title DBEditTitle.Text
PageNum DBEditPageNum.Text
........
在Foxpro中可以用如下语句实现:
use Replace
locate for FindText='Title'
if found()
Replace_var=ReplaceText
Endif
//应用ReplaceText字段的值
?&ReplaceText
Delphi实现方法:
//假设DBEditTitle.Text:=“带你进入P4时代”;
Table1.Open;
Table1.First;
while not Table1.Eof do
Begin
FindText:=Table1.FieldByName('FindText').AsString;
ReplaceWith:=Table1.FieldByName('ReplaceText').AsString;
//在FindText处用ReplaceText的内容替换,为了简化,此处用ShowMessage显示变量值。
ShowMessage(ReplaceText);
ShowMessage(DBEditTitle.Text);
Table1.Next;
End;
运行结果ShowMessage(DBEditTitle.Text)显示的是“带你进入P4时代”,ShowMessage(ReplaceText)
显示的是“DBEditTitle.Text”。怎样才能实现“Title”用“带你进入P4时代”替换?