0
我正在使用德尔福2010年和Rave报告(内置,第7.7.0)。德尔福2010 - Rave报告运行时文本更改问题
我一直在使用这对夫妇5个月没有任何问题。在我的公司,我使用两种语言,首先使用我们的主要语言(土耳其语),当人们想使用其他语言时,我根据其标签值更改特定文本和备注值。
这种方法一直运行良好,直到上周。上周在运行时更改值停止工作。我不知道为什么,一切似乎与代码确定,我也试图检查更改的值,值似乎改变,但是当我执行报告时,所有的值都改变了默认值。
这里是我的更改代码:
procedure ProcessRaveReport(APageName : string); // 'rp411.rp411Page'
var
myPage : TRavePage;
myText : TRaveText;
i, iTag : Integer;
begin
dm.Rave.Open;
with dm.Rave.ProjMan do
begin
myPage := FindRaveComponent(APageName,nil) as TRavePage;
if myPage = nil then Exit;
for i:= 0 to myPage.ComponentCount-1 do
begin
if myPage.Components[i] is TComponent then
iTag := (myPage.Components[i] as TComponent).Tag;
if (iTag > 0) then
begin
if myPage.Components[i] is TRaveText then
begin
//ShowMessage((myPage.Components[i] as TRaveText).Text);
//ShowMessage(getLangIDS((myPage.Components[i] as TRaveText).Tag));
(myPage.Components[i] as TRaveText).Text := getLangIDS((myPage.Components[i] as TRaveText).Tag);
//ShowMessage('Sonuc : '+(myPage.Components[i] as TRaveText).Text);
end
else if myPage.Components[i] is TRaveMemo then
(myPage.Components[i] as TRaveMemo).Text := getLangIDS((myPage.Components[i] as TRaveMemo).Tag);
end;
//iTag := 0;
end;
end;
dm.Rave.Close;
end;
你可以看到我的showmessage电话,这个消息证实变为新的语言,它的价值,但最后我总能看到默认值。
有没有人知道任何解决方案的问题?
Denizhan
是的,你是对的。我改变了文本,但更改后关闭了这个实例。我删除了“dm.Rave.Close”,它在运行时实例上工作。感谢您提醒有关实例的事情。 – dseckin 2010-09-13 06:18:39