delphi - 如果类型 (Array Variant) 无法将变体转换为类型 (OleStr)

标签 delphi delphi-xe fastreport

当尝试从 delphi 动态绑定(bind) TfrxBarCodeView 时,出现错误:如果类型 (Array Variant) 为类型 (OleStr),则无法将变体转换为类型 (OleStr)。

var
     barcode: TfrxComponent;
     value  : String;
begin  
  barcode := frxBarcode.FindObject('BarCode1');

  value  := '184577787878';

  if barcode is TfrxBarCodeView then
     TfrxBarCodeView(barcode).BarCode.Text := value;

在 frxBarcode 中我有:

enter image description here

最佳答案

我认为你应该设置条形码 View 本身的文本而不是条形码 View 的条形码文本,所以:

TfrxBarCodeView(barcode).Text := value;

而不是

TfrxBarCodeView(barcode).BarCode.Text := value;

<罢工>

尝试添加引用,但在线文档似乎不存在。但我碰到了this snippet在 FastReports 论坛上,以及 this one在一些我不知道的网站上。两者都使用 TfrxBarCodeView.Text而不是TfrxBarCodeView.Barcode.Text .

关于delphi - 如果类型 (Array Variant) 无法将变体转换为类型 (OleStr),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58060217/

相关文章:

delphi - 究竟csClickEvents和csCaptureMouse是什么?

delphi - DFM 文件中属性的顺序重要吗?

delphi - 编译前将 dcu 文件添加到项目中 [OTA]

javascript - Fast Report 将报告转换为 HTML

delphi - 如何让Delphi的IDE正确滚动?

delphi - 仅 Hook WH_GETMESSAGE 并过滤 WM_SETTEXT

multithreading - CodeSite 类别和线程

xml - Delphi 类到 XML 表示 :

mysql - DBGrid 中的千位分隔符