最简单的方法是使用哪种方式来制作Linux C++图形用户界面应用程序?我正在使用GNOME和Ubuntu 8.10。
最简单的方法是使用哪种方式来制作Linux C++图形用户界面应用程序?我正在使用GNOME和Ubuntu 8.10。
最简单的方法是使用图形用户界面(GUI)构建工具。
对于GTK,可以使用Glade。
对于QT,可以使用QT Designer。
对于wxWidgets,可以使用wxDesigner和wxFormBuilder。
更新:我应该提到,这些工具可以输出C++等多种语言。
我个人更喜欢QT,因为我喜欢使用信号/槽机制,并发现用它快速开发应用程序很容易。您的其他选择可能是wxWidgets和GTK+。
gtkmm是gtk的c++绑定,它应该可以正常工作
请明确所提到的工具包(GTK+、QT和wxWidgets)
GTK+是GNOME使用的工具包。
QT是KDE使用的工具包。
wxWidget旨在成为一个抽象层,可以更少地针对桌面环境进行特定的设计。(并且其他工具包也类似)。
还有一个值得一探究竟的工具包是EFL,这是E17使用的工具包,尽管该桌面环境的开发速度缓慢,但我听说它的设计很好。请注意,启示项目的某些组件(如imlib2)已经被其他项目使用多年。
最简单的方法肯定是使用Ultimate++。我无法描述它有多棒,你只需要尝试一下并自己相信即可。以下是一个完整的应用程序:
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
class HelloWorld : public TopWindow {
MenuBar menu;
StatusBar status;
void FileMenu(Bar& bar);
void MainMenu(Bar& bar);
void About();
public:
typedef HelloWorld CLASSNAME;
HelloWorld();
};
void HelloWorld::About()
{
PromptOK("{{1@5 [@9= This is the]::@2 [A5@0 Ultimate`+`+ Hello world sample}}");
}
void HelloWorld::FileMenu(Bar& bar)
{
bar.Add("About..", THISBACK(About));
bar.Separator();
bar.Add("Exit", THISBACK(Close));
}
void HelloWorld::MainMenu(Bar& bar)
{
menu.Add("File", THISBACK(FileMenu));
}
HelloWorld::HelloWorld()
{
AddFrame(menu);
AddFrame(status);
menu.Set(THISBACK(MainMenu));
status = "Welcome to the Ultimate++ !";
}
GUI_APP_MAIN
{
SetLanguage(LNG_ENGLISH);
HelloWorld().Run();
}