Nana is a cross-platform library for GUI programming in modern C++ style. Learn more...

  • LANGUAGE C++11/14/17
  • COMPILER Any Standard C++ compiler(Visual C++ 2013, GCC/MinGW and Clang)
  • PLATFORM Windows/Linux(X11)/FreeBSD(X11)
#include <nana/gui.hpp>
#include <nana/gui/widgets/label.hpp>
#include <nana/gui/widgets/button.hpp>

int main()
{
    using namespace nana;

    //Define a form.
    form fm;

    //Define a label and display a text.
    label lab{fm, "Hello, <bold blue size=16>Nana C++ Library</>"};
    lab.format(true);

    //Define a button and answer the click event.
    button btn{fm, "Quit"};
    btn.events().click([&fm]{
        fm.close();
    });

    //Layout management
    fm.div("vert <><<><weight=80% text><>><><weight=24<><button><>><>");
    fm["text"]<<lab;
    fm["button"] << btn;
    fm.collocate();
	
    //Show the form
    fm.show();

    //Start to event loop process, it blocks until the form is closed.
    exec();
}
Screenshots See applications using Nana

Nana C++ Library 1.6.1 Available Now

Nana 1.6.1 brings several updates – including enhanced stability and usability, and numerous other bug fixes and ...


Extra Libraries Are Updated For VS2017 v15.7.2

Prebuilt extra libraries are updated for Visual Studio 2017 v15.7.2 libjpeg is updated to 9c libpng is updated to ...


Nana C++ Library 1.6.0 Available Now

Nana 1.6 brings several updates - including enhanced stability, usability and numerous other bug fixes and improvements. Now, nana can ...


>>> More