接本博客上一篇文章,使用 Python 的 matplotlib 库画曲线。
上次是为了实现调用该库,数据是直接写死在 Python 代码里面的。代码是这一行:
squares = [1, 4, 9, 16, 25];
既然是 Delphi 调用 Python 的库,数据应该是 Delphi 的程序传递给 Python 的代码,然后 Python 的代码利用 Python 库把图画出来。
比如,数据可能来自数据库。做数据库编程,Delphi 非常擅长啊。
上述 Python 代码,是把很多数字,给了一个数组类型的变量。
在 Delphi 这边,首先,拖一个控件到界面上:PythonDelphiVar1
设置 PythonDelphiVar1.VarName := 'MyParams'; 这个 MyParams 就是在 Python 代码中,Python 可以读 Delphi 传递过来的数据的变量名。
然后给 PythonDelphiVar1.OnGetData 事件写程序。Python 的数组,在 Delphi 这边该如何传递数据过去呢?我猜了一下,写下代码测试。结果猜中。代码如下:
procedure TForm2.PythonDelphiVar1GetData(Sender: TObject; var Data: Variant);
begin
{------------------------------------------------------------------------
# squares = [1, 4, 9, 16, 25];
squares = MyParams.Value
在 Python 里面使用第二行代码,就可以在 Delphi 里面,通过下面的 VarArrayOf 赋值给 Python 了。
测试通过。
--------------------

最低0.47元/天 解锁文章
1354

被折叠的 条评论
为什么被折叠?



