type
vItems = record
Items :string; //项目名称
Units :string; //单位
Nums :Integer; //数量
Price :Currency; //单价
Money :Currency; //金额
end;函数名称:
function OpenFrm(var sItem:array of vItems;OperatorCode:string):Boolean;调用过程:
procedure TWorkWindowForm.btn1Click(Sender: TObject);
var
bb:array [0..7] of vItems;
begin
OpenFrm(bb,'aa');
end;错误:
[Error] WorkWindow.pas(62): Incompatible types
vItems = record
Items :string; //项目名称
Units :string; //单位
Nums :Integer; //数量
Price :Currency; //单价
Money :Currency; //金额
end;函数名称:
function OpenFrm(var sItem:array of vItems;OperatorCode:string):Boolean;调用过程:
procedure TWorkWindowForm.btn1Click(Sender: TObject);
var
bb:array [0..7] of vItems;
begin
OpenFrm(bb,'aa');
end;错误:
[Error] WorkWindow.pas(62): Incompatible types
解决方案 »
- 如何判断一个非子窗体已经创建,为何我用findwindow 在子窗体未没创建时确不为0 了?
- 用stringgrid或listview显示数据库中的数据有什么好处?
- API里面用writefile()函数发送串口数据,怎么数据有时会截掉?
- 关于dbgrid
- 有没有办法让DBGRID的picklist达到Combobox的csDropDownList效果.
- 使用QUERY控件对表进行删除所有表操作出错
- 1.如何锁定计算机;2.如何将屏幕黑屏;3.键值问题.....
- 关于TDirectoryListBox使用上的一个问题
- keybd_event在锁屏时无效,求替代方法
- 关于mciSendCommand函数
- 如何进行结构体指针类型转换
- 求解!!关于转换的问题!
var
bb:Array of vItems;
setlength(bb,8);
OpenFrm(bb,'aa');
bb:array of vItems;
setlength(bb,8);
TRec = record
end;procedure a(var x: array of TRec);
beginend;procedure TForm1.FormCreate(Sender: TObject);
var
m: array[0..7] of TRec;
begin
a(m);
end;
因为开放数组可以接受 动态数组和静态数组,所以在楼主的OpenFrm例程中,不可调用SetLength。一但调用,则会出现此错误。
函数参数不能是array类型的吧?