我刚学用fastreport,现在有一个很简单的问题,请各位进来看看!(50分)

  • 主题发起人 主题发起人 devecom
  • 开始时间 开始时间
D

devecom

Unregistered / Unconfirmed
GUEST, unregistred user!
在做信封打印程序时,有一个邮编字段,直接连接到text上面很正常,例如:
if View.memo.name='Memopostcode' then
View.memo.text := '[QueryTemp."postcode"]';

但是现在的要求是要把邮编这个字段猜分,也就是要分成6个text显示,每个text显示
一位编码,这样的话就不能这样做了,我开始的想法是用copy()函数显示一位,
if View.memo.name='MemoPostCode1' then
View.memo.text := Copy('[QueryTemp."Postcode"]',1,1);
结果出来的不是我想要的,而是这个字符串的Copy,比如这里就会显示 '[' 这个符号

我应该怎么办呢?
请指教!

急盼回复!!!
 
怎么没人看啊?
 
我没有用过fastreport,但针对你这个问题,提供一个参考意见:
copy函数把[QueryTemp."Postcode"]做为一个字符串来处理了,你可以用一个变量来中转
一下:
var l_str string;
if View.memo.name='MemoPostCode1' then
begin
l_str:='[QueryTemp."Postcode"]';
View.memo.text := Copy(l_str,1,1);
end;

 
to marshal:

其实你的方法我也想到了,我也试过,还是这样
但我估计fastreport不是在这个时候来赋值,因为用一个
变量来中转和这样时一回事,结果也是这样:)
 
把'[QueryTemp."Postcode"]'放到memo中,再把值从memo中读出来后再截取吧.
 
[COPY([Query0."fieldname"], 1, 1)]

就可以了
 
因为我没有用过fastreport,所以不知道为什么要给[QueryTemp."postcode"]加一个
引号?问题应该就是这个引号造成的
 
呵呵,别忘记了 FastReport 强大的函数功能,他自己就支持 Copy 函数!

if View.memo.name='MemoPostCode1' then
View.memo.text := '[Copy([QueryTemp."Postcode"], 1, 1)]';

FastReport 我也刚装了几天,发现这个函数纯属运气:)
你自己去看看,在输入 Memo 的值的时候的编辑窗口的第一个按钮“插入表达式”
弹出“表达式编辑器”,它右边有一个按钮“函数”,点击出来“可用函数”窗口
怎么样,够多吧:)不够用还可以自己扩展,具体参加帮助。
 
呵呵,多谢beta :)

还有一个问题,能帮我看看么?

http://www.delphibbs.com/delphibbs/dispq.asp?lid=1164459
 
后退
顶部