is it possible to dev开发者_如何转开发elop a GUI in linux c?? how can be do that??
If you want to develop GUI applications for Linux with pure C you can use GTK+. IF C++ is an option you also have Qt.
There are many graphical toolkits for linux such as GTK, Qt, wxWidgets, and FLTK. They have bindings for many languages such as C and Python. I suggest you google around to see what you like. If you want a RAD you may want to check out things like glade and qt creator.
Yes. Use a GUI toolkit such as GTK+ that uses C, or find a wrapper for one of the various C++ toolkits.
XForms is a graphical user interface toolkit for X based on the X11 Xlib library. I.e., it allows you to create windows, containing all kinds of widgets (buttons, sliders, browsers, menus etc.) with a few lines of code and then attach actions to the widgets, i.e., have some function called when a button is pressed. To make this even easier XForms comes with a program called fdesign that allows you to design a GUI for a program directly on the screen and which then writes out the necessary C code for it.
XForms is written in C and has a C API, i.e., you can use it directly from a C program. It should work with X11 R4, R5, R6 & R7 and under all kinds of operating systems of the UNIX family (including MacOS X) as well as at least OpenVMS, OS/2 und Windows NT 4.0. In addition, the library is extensible and new objects can easily be created and added to the library.
http://xforms-toolkit.org
I would recommend FLTK. It may be difficult to write complex interface with it. But FLTK, as its name implies, is very small and fairly fast. What is more important, it is cross-platform, working nicely on the three major OS: linux, windows and mac. In my view, GTK/Qt/wxWidgets are far too heavy. If you statically link to these library, you will end up with a huge executable which eat up the memory; if you dynamically link to them, users have to install the library before hand, which is always troublesome.
EDIT: I just realize that this is a "C" question. Then the best choice should be GTK. If you need graphics but not interface/widgets (e.g. menu, scrollbar and so on), opengl is also nice.
精彩评论