GUI development for my c application . How to proceed? GUI development for my c application . How to proceed? tkinter tkinter

GUI development for my c application . How to proceed?


I recommend using GTK+ or Qt for your application.
They are popular, cross-platform and both have extensive documentation and great community.


Take a look at Cython for easily connecting the C world with the Python world if you decide to link your C code with the UI, it's highly convenient as a glue language.

Depending on your application, it might be a good option to keep it as a command line application that you call from a python program. The subprocess module is the usual route here, but there are some tools that can help even more -- like commandwrapper.

As for the GUI, apart from the already mentioned (perfectly viable) alternatives in other answers, Kivy is an interesting newcomer, and pyFLTK is a lightweight, easy-to-learn, old-school approach. These are a bit exotic, but it's good to know they exist.

Finally, QT5 was recently released and it shows a lot of promise. You might want to consider it if you don't mind writing C++, it's various language wrappers are not ready yet.


You'll need to install the libraries for whichever GUI framework you want to use. WxWidgets is available for C, as well as Python, so you don't really need to link to the Python library. Other options (as indicated by Intelis) are GTK+ and QT.

If you're developing in Windows, then you may also use the Windows API to create your GUI application. Alternatively, you might consider using C++ (Either managed C++ or MFC).

Once you have installed the appropriate libraries, you will need to include them in your C source by using the #include <...> directive.

Take a look at these sites:

WxWidgets Tutorial.

GTK+ Tutorials

QT Tutorial