2016-11-30 61 views

回答

0

嘗試使用Page.OnBeforePrint()事件並通過控件代替其Text屬性來循環。

procedure Page1OnBeforePrint(Sender: TfrxComponent); 
var 
    Obj : TObject; 
    Memo : TFrxMemoView;                
    i : Integer;         
begin                               
    for i:=0 to Sender.Objects.Count -1 do 
    begin 
    Obj := Sender.Objects[i]; 
    if (Obj is TfrxMemoView) then 
    begin      
     Memo := TfrxMemoView(Obj);    
     if (UpperCase(trim(Memo.Text))='FALSE') then Memo.Text := 'No'; 
     if (UpperCase(trim(Memo.Text))='TRUE') then Memo.Text := 'Yes';                   
    end;          
    end;     
end; 

也許這不是完美的解決方案,但它展示瞭如何通過頁面對象迭代。

2

你可以做到這一點如下:

1在數據樹阻力,在樂隊放下你的Boolean場。

2-雙擊Memo

3-點擊格式 Tab。請選擇Boolean

5-選擇是/否格式

6-點擊確定按鈕。

更新:

如果你不是在設計模式,然後:

Var Mem : TfrxMemoView; 
Mem := frxReport1.FindObject('MyMemo') as TfrxMemoView; 
Mem.DisplayFormat.Kind:=fkBoolean; 
Mem.DisplayFormat.FormatStr:='No,Yes'; 
+0

我使用OnManualBuild動態創建報告,而不是在設計模式下。 – egroups

+0

您也可以手動將此遮罩放在手動創建的TfrxMemoViews(DisplayFormat.FormatStr屬性)上。 –

+0

非常感謝Sami.This爲我工作。 – egroups