社区
VCL组件使用和开发
帖子详情
fastreport 修改报表时菜单怎么全是2378、2379等数字啊,不现实中文的菜单。
dxhh99
2007-07-30 11:50:44
fastreport 修改报表时菜单怎么全是2378、2379等数字啊,不现实中文的菜单。
在工程里面修改能正常现实,可是编译后在程序里进行修改时所有的菜单全都显示成数字
...全文
92
7
打赏
收藏
fastreport 修改报表时菜单怎么全是2378、2379等数字啊,不现实中文的菜单。
fastreport 修改报表时菜单怎么全是2378、2379等数字啊,不现实中文的菜单。 在工程里面修改能正常现实,可是编译后在程序里进行修改时所有的菜单全都显示成数字
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dxhh99
2008-07-28
打赏
举报
回复
FastReport目录下的Res目录为语言包目录,手工编译时,可将res\chinese\目录下所有文件复制到source目录或者运行res\chinese目录下的mk.bat或mkall.ba
之后还需要重新编译一下。
ccrun.com
2008-05-28
打赏
举报
回复
FastReport目录下的Res目录为语言包目录,手工编译时,可将res\chinese\目录下所有文件复制到source目录或者运行res\chinese目录下的mk.bat或mkall.bat
ynszx
2008-05-27
打赏
举报
回复
我也遇到过,说实在我也不知怎么弄好的。
后来总结原因:可能是我手动逐个编译所需文件,出现这个问题。
后来我直接用自带的recompile运行编译就没有这个问题。
dxgxk
2007-07-31
打赏
举报
回复
我用的版本是 4.3
i_love_pc
2007-07-31
打赏
举报
回复
你用的是哪个版本,好像有的版本对中文支持不太好。
修正
fast
report
编辑
报表
界面中
中文
乱码
在网上找了好多个
fast
report
XE7的版本的程序,发现装好后,在编辑
报表
样式界面部分
中文
是乱码,无法识别,编译出来的程序也是
中文
乱码问题,很头痛,偶然的机会发现一个方法,使用
修改
过的frcc.exe文件重新编译,下载附件
中文
件,解压缩到
fast
report
文件夹中覆盖替换掉原来的文件,然后重新recompile
中文
一下即可
Fast
Report
问题集
Fast
Report
问题集 Q: 我怎样添加我的自定义函数? A: 使用 Tfr
Report
.OnUserFunction 事件. 这里有一个简单的例子: procedure TForm1.fr
Report
1UserFunction(const Name: String; p1, p2, p3: Variant; var val: Variant); begin if AnsiCompareText(‘SUMTOSTR‘, Name) = 0 then val := My_Convertion_Routine(frParser.Calc(p1)); end; 然后,你就可以在
报表
(任何表达式或脚本)的任何地方使用 SumToStr 函数了。 Q: 但是它仅仅能工作在一个Tfr
Report
组件中。可我想在任何地方(在所有的Tfr
Report
组件中)使用的我的自定义函数? A: 使 OnUserFunction event 句柄作为所有组件的公用句柄。如果你不能做到这一点,你需要创建函数库: type TMyFunctionLibrary = class(TfrFunctionLibrary) public constructor Create; override; procedure DoFunction(Fno: Integer; p1, p2, p3: Variant; var val: Variant); override; end; constructor TMyFunctionLibrary.Create; begin inherited Create; with List do begin Add(‘DATETOSTR‘); Add(‘SUMTOSTR‘); end; end; procedure TMyFunctionLibrary.DoFunction(Fno: Integer; p1, p2, p3: Variant; var val: Variant); begin val := 0; case Fno of 0: val := My_DateConvertion_Routine(frParser.Calc(p1)); 1: val := My_SumConvertion_Routine(frParser.Calc(p1)); end; end; 要注册函数库,调用 frRegisterFunctionLibrary(TMyFunctionLibrary); 要卸载函数库,调用 frUnRegisterFunctionLibrary(TMyFunctionLibrary); Q: 我怎样将我的函数添加到函数列表中 (用表达式生成器)? A: 使用 frAddFunctionDesc 过程 (在FR_Class 单元中): frAddFunctionDesc(FuncLib, ‘SUMTOSTR‘, ‘My functions‘, ‘SUMTOSTR(
)/Converts number to its verbal presentation.‘); 注意: "/" 符号是必须的! 它从它的描述中分隔函数语法。 FuncLib 被声明为你自己的函数库 (如果你不使用函数库可以将其设置为nil). 当函数库未注册
时
,所有它的函数将自动从函数列表中删除。 ---------------- 使用变量 ------------------------------------- Q: 我怎样编程实现填充变量列表(在数据词典中)? A: 数据词典中的所有变量及分类都被存储在 Tfr
Report
.Dictionary.Variables 中. with fr
Report
1.Dictionary do begin // 创建分类(名称用空白) Variables[‘ New category‘] := ‘‘; // 创建变量 Variables[‘New Variable‘] := ‘CustomerData.Customers."CustNo"‘; Variables[‘Another Variable‘] := ‘Page#‘; end; Q: 我定义了字符串变量: with fr
Report
1.Dictionary do Variables[‘Month‘] := ‘March‘; 但是当我运行
报表
是,出现了错误,为什么? A: 因为
Fast
Report
假定数据词典中的字符串变量值是一个表达式,它需要分析、计算它。 可以使用其它的方法: with fr
Report
1.Dictionary do Variables[‘Month‘] := ‘‘‘‘ + ‘March‘ + ‘‘‘‘; 或者, 使用 frVariables 来传输固定数据到
报表
。 Q: 我不想在数据词典中显示某些数据集? A: 使用 Tfr
Report
.Dictionary.DisabledDatasets: with fr
Report
1.Dictionary do begin // 关闭该数据集 DisabledDatasets.Add(‘CustomerData.Bio‘); // 或者, 关闭整个数据模块/窗体 DisabledDatasets.Add(‘CustomerData*‘); end; Q: 我怎样将数据传送到
报表
? A: 有几个方法可以实现它. 第一是使用全局对象 frVariables (在 FR_Class 单元中被定义): frVariables[‘My variable‘] := 10; 这段代码创建了一个名称为“My variable”,值为 10 的变量。这是最好的传输固定数据的
报表
的方法。 第二种方法是使用 Tfr
Report
.OnGetValue 事件. 这可以使用这个方法来传送动态数据、记录等。 procedure TForm1.fr
Report
1GetValue(ParName: String; var ParValue: Variant); begin if ParName = ‘MyField‘ then ParValue := Table1MyField.Value; end; 最后, 第三种方法是通过编程在数据词典中定义变量(可以参考以前的问题): with fr
Report
1.Dictionary do begin Variables[‘MyVariable‘] := ‘CustomerData.Customers."CustNo"‘; Variables[‘Another Variable‘] := ‘10‘; end; Q: 我能在
报表
和程序间传送数据吗? A: 使用 frVariables 对象. 如果你在
报表
的任何对象的脚本中写入以下代码: MyVariable := 10 那么,在你的程序中,你可以使用以下代码来获取 MyVariable 的值: v := frVariables[‘MyVariable‘]; ---------------- 脚本 (
Fast
Report
Pascal) --------------------------------- Q: Band 中是否可以使用脚本? A: 当然. 选择 band ,然后按 Ctrl+Enter 或在对象浏览器中选择 "OnBeforePrint" 属性。 Q:
报表
页中是否可以使用脚本? A: 当然. 选择页 (在空白处单击) ,然后在对象浏览器中选择 "OnBeforePrint" 属性。如果该页是一个对话框窗体,那么这个属性就是 "OnActivate". Q: 我有两个对象: Memo1 和 Memo2. 我能否在 Memo1 的脚本中调用 Memo2 的属性和方法? A: 当然, 例如,你可以这样做: 对象名.属性名. Q: 在脚本中,我可以使用对象的哪些属性? A: 几乎所有你能在对象浏览器中看到的属性。例如,可以使用 Font.Name, Font.Size等来存取字体属性。 ---------------- 其它问题 -------------------------------------------- Q: 怎样改变多页
报表
中某一页的顺序? A: 拖动页标签到目的位置。 Q: 我想查看所有的字段及变量,我想在
报表
中使用列表来实现它? A: 设置 Tfr
Report
.MixVariablesAndDBFields := True.现在,所有的数据字段及变量可在“插入数据字段”对话框中可存取了。 Q: 我不想显示导入选项对话框? A: 在导入组件(比如,TfrTextExport)中设置所有必需的选项,然后通过设置ShowDialog属性为False来关闭此对话框。 Q: 为什么 TotalPages 变量不起作用? 它总是返回 0. A: 在你的
报表
中设置 Two-pass 选项. 要设置它,你需要在
报表
设计器的“文件”
菜单
中,打开“
报表
选项”对话框。 Q: 我用BLOB字段来存储我的
报表
。当我运行
报表
设计器
时
,它显示我的
报表
未命名? A: 在运行
报表
设计器前,这样做: fr
Report
1.FileName := ‘Name of my
report
‘; Q: 我想在重新定义
报表
设计器中的“打开”及“保存”按钮的功能? A: 查看 TfrDesigner 组件. 它有几个必需的事件: OnLoad
Report
和 OnSave
Report
. 这里有一小段代码例子: procedure TForm1.frDesigner1Load
Report
(
Report
: Tfr
Report
; var
Report
Name: String; var Opened: Boolean); begin with MyOpenDialog do begin Opened := ShowModal = mrOk; if Opened then begin
Report
.LoadFromBlobField(…);
Report
Name := …; end; end; end; procedure TForm1.frDesigner1Save
Report
(
Report
: Tfr
Report
; var
Report
Name: String; SaveAs: Boolean; var Saved: Boolean); begin if SaveAs then with MySaveDialog do begin Saved := ShowModal = mrOk; if Saved then begin
Report
.SaveToBlobField(…);
Report
Name := …; end; end else
Report
.SaveToBlobField(…); end; Q: 在 QR 中, 我可以写这样的代码: QRLabel1.Caption := ‘Some text‘. 我可以用FR这样做吗? A: FR 对象并不是一个组件 (这并不像 QR, RB). 但使用 Tfr
Report
.FindObject 方法可以通过对象名称找到该对象。 var t: TfrMemoView; begin t := TfrMemoView(fr
Report
1.FindObject(‘Memo1‘)); if t <> nil then t.Memo.Text := ‘
Fast
Report
‘; end; Q: 我想在用户预览(TfrPreview组件)中自定义热键? A: 这个组件有个窗口: Tform 属性. 将自定义句柄指定到 Window.OnKeyDown 属性. Q:
Fast
Report
2.4 不能装载 Free
Report
2.21 文件? A: 这仅需要使用16进制数改变
报表
文件的第一字节,然后在源代码中
修改
下面的部分。在这些
修改
之后, 装载
报表
并保存它. 最后,返回到源代码处. FR_Class: function ReadString(Stream: Tstream): String; begin { if frVersion >= 23 then} Result := frReadString(Stream) {else Result := frReadString22(Stream);} end; procedure ReadMemo(Stream: Tstream; Memo: Tstrings); begin { if frVersion >= 23 then} frReadMemo(Stream, Memo){ else frReadMemo22(Stream, Memo);} end; FR_Utils: procedure frReadMemo(Stream: Tstream; l: Tstrings); var s: String; b: Byte; n: Word; begin l.Clear; l.Text := frReadString(Stream); exit; Stream.Read(n, 2); if n > 0 then repeat Stream.Read(n, 2); SetLength(s, n); Stream.Read(s[1], n); l.Add(s); Stream.Read(b, 1); until b = 0 else Stream.Read(b, 1); end; function frReadString(Stream: Tstream): String; var s: String; n: Integer; b: Byte; begin Stream.Read(n, 4); SetLength(s, n); Stream.Read(s[1], n); if (n > 0) and (s[n] = #$0A) then SetLength(s, n - 2); // Stream.Read(b, 1); Result := s; end; Q: 怎样不在打印预览中打印
报表
? A: 这里有一段代码: fr
Report
1.Prepare
Report
; fr
Report
1.PrintPrepared
Report
(‘‘, 1, True, frAll); 或 fr
Report
1.PrintPrepared
Report
Dlg; Q: 我想在
报表
中旋转图片。问题是这张图片是由我的应用程序生成的。是否有方法可以在打印前将这幅图片装载到
报表
中? A: 使用 Tfr
Report
.OnBeforePrint 事件: if View.Name = ‘Picture1‘ then TfrPictureView(View).Picture.LoadFromFile(…) 或 .Assign 或 .你所想要做的任何事情
Fast
Report
VCL Enterprise (ClientServer) 6.3.11 Full Source
Fast
Report
是功能齐全的
报表
控件,使开发者可以快速并高效地为·NET/VCL/COM/ActiveX应用程序添加
报表
支持。 此版本号为6.3.11全部源码版,支持D7到D10.3_Rio最新版本,编译前要删除旧版BPL。 关闭IDE,编译好
Fast
Report
,复制BPL到Projects下覆盖旧版 ----------------------------- 安装
Fast
Report
VCL 6.3.11强大的
报表
制作控件包 安装步骤: 一、打开文件夹中自带的编译工具recompile.exe 进行编译控件包。 1、在select the compiler中,选择你电脑已安装的delphi对应版本 2、Select the
Fast
Report
Version:选中Enterprise (企业版) 3、Select the TeeChart Version:TeeChartStd 4、what you want to do: 先选中Recompile all Packages后,点按钮【compile】 进行编译所有包,等1-3分钟完成后。 再选中Change Language to:Chinese ,点按钮【compile】 进行编译
中文
包。 二、安装编译后的
Fast
Report
VCL 6.3.11组件。 1、打开delph10.3.1,
菜单
Component->Install Packages... 【add...】添加组件, 打开以上编译好的
Fast
Report
控件包目录,选择所有的*.BPL文件进行安装。 安装教程:https://blog.csdn.net/yhcad/article/details/90741792
Fast
report
VCL Enterprise 5.2.3 for XE2-XE8
看清楚描述,是Enterprise 版本的。
Fast
Report
for delphi xe 安装步骤 1、先关闭DELPHI; 2、下载后解压到一个目录,比如:D:FR; 3、打开D:FR,运行recompile.exe ->点击"Continue"继续 ->1."Select the compiler"选"Embar cadero RAD Studio XE(Delphi,C++)"; ->2."Select the
Fast
Report
version"选"Enterprise"(选择FR的版本) ->3."Select the TeeChart version"选"TerCharStd"(选择你TeeChart版本) ->4."What you want to do"选"Recompile all packages"(一定要选这个),那个语言选择的不管它先(默认English) ->点击"Compile"(等它编译完,有个确定提示,记下上面的编译到路径,比如:D:FRLibD15) ->点击"确定",返回窗口点击"exit"关闭 4、打开Delphi XE ->1.
菜单
"Tools"->"Options"->左侧"Environment Options"->"delphi Options"->"Library"->右侧"Library path:"->右边的"..."按钮-> 把前面的路径(D:FRLibD15)复制到"Greyed items denote invalid path."中->点击"OK"完成编译路径的添加->关闭Option窗口 ->2.
菜单
"Component"->"Install Packages"->"Add"->在打开的浏览窗口中选择到编译路径(D:FRLibD15), 选择所有dcl开关的.bpl文件->点击"确定"完成控件的安装->关闭"Component"窗口 5、 到这里安装已经完成,接下测试
Fast
Report
,新建一工程,加入
Fast
Report
的组件->
菜单
"Project"->"Build All Projects"->能完成,不报错,说明安装成功了
Fast
Report
5.6.1 full source
很好用的
报表
: 1. 关闭开发工具。 2. 右键【以管理员身份运行】对应版本的 recompile.exe,没有管理员权限,一定出问题。 2.1 选择你对应的 IDE 版本。 2.2 选择 Enteprise 版本 2.3 选择 Recompile all packages 2.4 点 Compile 按钮。 2.5 选择 Change Language to: 你的语言. 2.6 点 Compile 按钮。 3. 打开开发工具。 4.
Fast
Report
s 下的 LibD22 (这个是 XE8 的,请找你对应的版本) 要加入到 开发工具的 Library 路径中。 5.
菜单
中选择 Component->Install Packages 6. 点击 add 按钮 选择到
Fast
Report
s 的目录 找到 LibD22(或者你对应的版本)选择所有 *.bpl 文件,然后打开。 7. 安装过程中,会有提示 XXX bpl 已经加载。这个不用管。 8. 点击 ok 完成安装。 本人
修改
的版本特点是 About 对话框中显示 版权标志®,而不是一个 ?。 注意:在 XE7或更新版本 上 BDE 已经不存在了,所以 BDE 相关的都编译失败。不影响其他的。
VCL组件使用和开发
604
社区成员
13,460
社区内容
发帖
与我相关
我的任务
VCL组件使用和开发
C++ Builder VCL组件使用和开发
复制链接
扫一扫
分享
社区描述
C++ Builder VCL组件使用和开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章