GUI:
class PythonShell: public QMainWindow
{
Q_OBJECT
public:
PythonShell(QWidget *parent = 0);
~PythonShell();
QPlainTextEdit* OutputTextEdit;
main.cpp中:
static PyObject* redir_print(PyObject* self, PyObject* args)
{
const char* s;
if(!PyArg_ParseTuple(args,"s",&s))
return nullptr;
PythonShell::OutputTextEdit->appendPlainText(s);
Py_RETURN_NONE;
}
错误:无效使用非静态数据成员
OutputTextEdit
。
出了什么问题?
答案 0 :(得分:0)
您需要通过创建PythonShell
的对象将PythonShell
带入现实生活。
PythonShell obj;
然后访问其成员
obj.OutputTextEdit->appendPlainText(s);