本上次发过贴。说是求助一段源吗,内容是这样的:“本人想做一个小票打印程序,就是通常在服装店买衣服打印给客户那样的小票,第一部分是LOGO加店名(字体大点),第二部分是基本内容(字体一般标准的),第三部分是,本店的地址,加上联系方式等”。有一分热心的朋友告诉我,用DELPHPI本身代码写,可能很困难,如借助第三方控件就很简单,然后在他的回复中找到了这个控件的名字FastReports4,我也试着用这个控件中的一个组件画了一个画,咦!果真提快的,一下子画好了,接下来的就是代码问题了,那么我要如何把这个EDIT中的内容或者是memo中内空输出到报表上呢?百度,GOOGLE了一下,音讯全无!求高手来发份资料呀,或者方下方法,小人邮箱地址:[email protected]

解决方案 »

  1.   

    使用自定义变量可实现把非数据库变量放到 FastReport 中,做法如下:1.在 OnGetValue 事件中,把你的控件付值给变量 
    如下procedure TfrmPrintBill.frxReport1GetValue(const VarName: String;
      var Value: Variant);
    begin
      //自己的增加变量
      if Trim(VarName)='制表' then
        Value:=Edit1.text; 
      if Trim(VarName)='工号' then
        Value:=Edit2.Text ;
    end;2. 在 FastReport 设计画面
    使用自己的定义的变量  [制表] ,[工号]  
      

  2.   

    1.打开fastreport的设计窗体,菜单 Report-->Variables,点击 New Category按钮,选择New Category1后,再点击 New Variable,变量名自己起,例如: address ,点击 OK 按钮保存。2.在fatsreport的brand上放置一个TfrxMemoView,就是Text object 按钮,双击此TfrxMemoView,在 Text 页上点击 insert expression ,点击 Variables 页,选取变量 address,点击 OK 保存。设计好此报表后保存为: test.fr3。3.在delphi 相应单元中加入以下代码:with frxReport1 do 
    begin
      LoadFromFile( 'test.fr3') ; //自己注意路径
      //对变量赋值
      Variables[ 'address' ] := QuotedStr(Edit1.text);
      ...
      //预备打印
      PrepareReport;
      ShowPreparedReport;
    end;够详细了吧