|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2023/5/31 10:43:35 |
标题: |
python4delphi 怎么把delphi的函数当做参数传递给python做为回调函数? |
浏览:308 |
|
加入我的收藏 |
楼主: |
谁用python4delphi 调用python 函数 把delphi的一个函数当做回调函数,并做为参数 传递给python里面的函数调用,试过很多办法都没成功,不报错,但是也不调用。 client.subscribe_whole_quote 是在一个pyd模块里面的函数 两个参数,第一个是列表,第二个是回调函数,谁知道怎么传递给他, procedure CallbackFunc(args: Variant); begin // 在这里处理回调函数逻辑 Form1.Memo1.Lines.add('111'); // ... end; callback:=PythonEngine1.PyCFunction_NewEx(@CallbackFunc, nil,nil); PythonEngine1.Py_INCREF(callback);
//client.subscribe_whole_quote(NewPythonDict,TVarProc(cb)); //codelist := VarPythonCreate(['SZ']); codelist := PythonEngine1.PyList_New(1); PythonEngine1.PyList_SetItem(codelist, 0, PythonEngine1.PyUnicode_FromString('110072.SH'));
argsTuple := PythonEngine1.PyTuple_New(2); PythonEngine1.PyTuple_SetItem(argsTuple, 0, codelist); PythonEngine1.PyTuple_SetItem(argsTuple, 1, callback); ss :=GetPythonEngine.EvalPyFunction(ExtractPythonObjectFrom( client.subscribe_whole_quote ), argsTuple);
----------------------------------------------
- |
作者: |
|
2023/5/31 10:45:34 |
1楼: |
C#里面可以直接把委托传递过去,调用就没问题
----------------------------------------------
-
|
|