带有C后端的简单GUI应用程序

时间:2011-08-28 17:25:37

标签: c user-interface

我想在Linux机器上编写一个简单的GUI应用程序(一些按钮和一个消息显示区域),以便与C后端一起使用。 C后端代码已经存在,我不想更改它。

前端最好的选择是什么?

最初我以为我会使用Ruby(例如使用Shoes或Ruby on Rails),但我想知道我是否最终花费太多时间才能正确地使用我的C后端进行前端对话。

GTK +会是一个更好的选择吗? 你有什么建议吗?

无论我采用什么方式,我都必须花费大量时间制作前端。

2 个答案:

答案 0 :(得分:3)

我建议使用wxPythonPyQT / PySide进行python。 要与C后端进行通信,您可以使用ctypes

以下是文档中C函数如何与ctypes一起使用的示例。

>>> printf = libc.printf
>>> printf("Hello, %s\n", "World!")
Hello, World!
>>> printf("Hello, %S\n", u"World!")
Hello, World!
>>> printf("%d bottles of beer\n", 42)
42 bottles of beer
>>> printf("%f bottles of beer\n", 42.5)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ArgumentError: argument 2: exceptions.TypeError: Don't know how to convert parameter 2
>>>

答案 1 :(得分:1)

根据后端处理的输入/输出类型,请考虑使用套接字或管道使用简单的纯文本协议进行通信。这样你就可以基本上使用任何带有基本文件IO的编程语言作为前端,而不会增加太多麻烦。

我个人可能会使用Python或Flash / AIR(因为我的主要专长就GUI编程而言)和后端的套接字连接(本地或远程运行)。但是,无论你感觉更舒服,也可能会有所帮助。