在opengl应用程序中进行交互式lua提示

时间:2010-05-06 22:31:23

标签: lua

好的,所以当我运行lua时,我会得到类似的东西:

lua
Lua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio
> 

现在,我想要一个这样的提示, 1)在我编写的GUI应用程序中。

我的GUI应用程序可以提供以下功能: get_input_from_screen(); 和write_this_crap_out_to_screen(); 我可以根据需要编写更多功能

我也知道如何在我的C ++代码中嵌入lua解释器(网上简短教程)

我不知道..是如何将lua解释器的输入/输出与我的GUI东西连接。

任何帮助/链接apreciated。

谢谢!

3 个答案:

答案 0 :(得分:3)

为什么不查看Lua stand-alone interpreter (lua.c)的源代码,看看Reobertoet al.是如何做到的?

答案 1 :(得分:1)

我也希望做这样的事情,只是通过lua.c查看并没有真正为我点击'。直到我在某个地方读到你想要用你自己的方法实现/覆盖print()函数时,一切都对我有意义。

关键是在你的应用程序中编写自己的打印功能,它知道如何将lua输出发送到你想要的组件 - 无论是一个小部件TextBox,游戏脚本控制台,另一个文件还是你有什么。然后你所要做的就是注册那个打印功能,让lua知道它。

类似地,为了让lua处理脚本输入,创建一个函数来检索要处理的字符串(例如,一个小部件文本框),然后将该字符串传递给类似lual_dostring()的类似物。然后设置输入功能以触发某些事件,例如当用户按下回车键或单击按钮等时。

这个site here有一个很好的代码示例来说明。

答案 2 :(得分:0)

我认为逻辑看起来像这样。

string s = gui_read();
string result = lua_interpreter(s);
gui_print(result);