CINXE.COM

The GTK Project - A free and open-source cross-platform widget toolkit

<!DOCTYPE html><html lang="en"dir="ltr"><head><meta charset="UTF-8"><meta name="viewport"content="width=device-width,height=device-height,initial-scale=1,minimum-scale=1,shrink-to-fit=no"><meta http-equiv="X-UA-Compatible"content="ie=edge"><meta name="theme-color"content="#ffffff"><meta name="apple-mobile-web-app-status-bar-style"content="#ffffff"><meta name="generator"content="Jekyll v4.0.1"><meta name="author"content="The GTK Team"><meta name="keywords"content="gtk, gtk, gimp, gnome, toolkit, user interface"><title>The GTK Project - A free and open-source cross-platform widget toolkit</title><meta itemprop="description"name="description"content="GTK is a free and open-source cross-platform widget toolkit for creating graphical user interfaces."><meta property="og:locale"content="en_US"><meta property="og:type"content="article"><meta property="og:title"content="The GTK Project - A free and open-source cross-platform widget toolkit"><meta property="og:url"content="https://www.gtk.org/docs/"><meta property="og:image"content="/assets/img/logo-gtk.png"><meta property="og:site_name"content="The GTK Team"><meta property="og:description"content="GTK is a free and open-source cross-platform widget toolkit for creating graphical user interfaces."><meta property="twitter:title"content="The GTK Project - A free and open-source cross-platform widget toolkit"><meta property="twitter:description"content="GTK is a free and open-source cross-platform widget toolkit for creating graphical user interfaces."><meta name="twitter:site"content="@"><meta name="twitter:creator"content="@"><meta name="twitter:card"content="summary"><link rel="apple-touch-icon"sizes="180x180"href="https://www.gtk.org/assets/img/icons/apple-touch-icon.png"><link rel="icon"type="image/png"sizes="32x32"href="https://www.gtk.org/assets/img/icons/favicon-32x32.png"><link rel="icon"type="image/png"sizes="16x16"href="https://www.gtk.org/assets/img/icons/favicon-16x16.png"><link rel="canonical"href="https://www.gtk.org/docs/"><link rel="stylesheet"href="https://www.gtk.org/assets/@fortawesome/fontawesome-free/css/all.min.css"type="text/css"media="screen"><link rel="stylesheet"href="https://www.gtk.org/assets/css/markdown.css"type="text/css"media="screen"><link rel="stylesheet"href="https://www.gtk.org/assets/css/theme.css"type="text/css"media="screen"><link rel="stylesheet"href="https://www.gtk.org/assets/css/colorful.css"type="text/css"media="screen"><link rel="stylesheet"href="https://www.gtk.org/assets/css/index.css"type="text/css"media="screen"></head><body><header class="navbar small bg-dark"><nav class="container navbar-expand-md px-0 px-md-3"><a href="https://www.gtk.org"class="navbar-brand text-white"><img src="https://www.gtk.org/assets/img/logo-gtk-sm.png"class="pr-2"style="max-width:40px;"><strong>GTK</strong></a> <a class="btn navbar-toggler border-0 bg-white"role="button"data-toggle="collapse"data-target="#navbarSupportedContent"href="#"><i class="fas fa-ellipsis-h text-dark"></i></a><div class="collapse navbar-collapse"id="navbarSupportedContent"><ul class="navbar-nav ml-auto"><a href="https://www.gtk.org/features/"class="nav-link-dark float-right text-white rounded">Features</a> <a href="https://www.gtk.org/docs/"class="nav-link-dark float-right text-white rounded">Docs</a> <a href="https://www.gtk.org/community/"class="nav-link-dark float-right text-white rounded">Community</a> <a href="https://gitlab.gnome.org/GNOME/gtk/"target="_blank"class="nav-link-dark float-right text-white rounded">Code</a> <a href="https://blog.gtk.org/"target="_blank"class="nav-link-dark float-right text-white rounded">Development Blog</a></ul></div></nav></header><button class="d-none btn border border-info bg-white rounded-circle position-fixed"id="btn-go-to-top"><i class="fas fa-angle-up"></i></button><section class="py-4 d-flex flex-column align-items-center bg-dark text-white"><div class="container"><div class="row align-items-center"><div class="col-md-6 pr-0 pr-md-5 d-flex flex-column"><h1 class="display-3 pb-3">Docs</h1><span class="text-info lead">Find out all the things you need to work with GTK as a Developer.</span></div><div class="col-md-6 d-md-flex d-none justify-content-end align-items-center"><img src="https://www.gtk.org/assets/img/wall-docs.svg"class="img-fluid w-75"alt="GTK Docs Wallpaper"></div></div></div></section><section class="py-4 bg-light"id="topics"><div class="container"><div class="row text-center d-flex justify-content-center"><div class="col-md-10 col-lg-7"><h2 class="font-weight-light mb-3">Browse Topics</h2><span class="text-muted">Get set with the topic of your choice and explore the documentation.</span></div></div><div class="row d-flex justify-content-center pt-5"><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-cogs fa-fw fa-3x pb-4 text-primary"></i><h5>Getting Started</h5><span class="text-muted small">Get started now by building a Hello World app and playing around it.</span> <a href="https://www.gtk.org/docs/getting-started/"class="stretched-link"></a></div></div><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-tools fa-fw fa-3x pb-4 text-primary"></i><h5>Dev Tools</h5><span class="text-muted small">Learn how to setup your development environment with GTK recommended tools.</span> <a href="https://www.gtk.org/docs/dev-tools/"class="stretched-link"></a></div></div><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-random fa-fw fa-3x pb-4 text-primary"></i><h5>Language Bindings</h5><span class="text-muted small">Learn to integrate your favorite programming language with GTK through bindings.</span> <a href="https://www.gtk.org/docs/language-bindings/"class="stretched-link"></a></div></div><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-cubes fa-fw fa-3x pb-4 text-primary"></i><h5>API References</h5><span class="text-muted small">Dig deep into the API references for GTK3 and GTK4.</span> <a href="https://www.gtk.org/docs/apis/"class="stretched-link"></a></div></div><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-vector-square fa-fw fa-3x pb-4 text-primary"></i><h5>Architecture</h5><span class="text-muted small">Learn about the sub modules the GTK has been built upon.</span> <a href="https://www.gtk.org/docs/architecture/"class="stretched-link"></a></div></div><div class="col-md-4 pb-3 pb-md-4"><div class="col h-100 py-5 text-center bg-white d-flex flex-column align-items-center shadow-sm shadow-hover rounded border-bottom border-primary"style="border-width: 2px !important"><i class="fas fa-box-open fa-fw fa-3x pb-4 text-primary"></i><h5>Installations</h5><span class="text-muted small">Figure out how to install GTK on different platforms.</span> <a href="https://www.gtk.org/docs/installations/"class="stretched-link"></a></div></div></div></div></section><section class="py-4"id="articles"><div class="container"><div class="row text-center d-flex justify-content-center"><div class="col-md-10 col-lg-7"><h2 class="font-weight-light mb-3">Popular Articles</h2><span class="text-muted">Selected featured articles for you to get started with GTK.</span></div></div><div class="row d-flex justify-content-center pt-5"><div class="col-md-10 col-lg-8"><div class="list-group"><a href="https://wiki.gnome.org/HowDoI"target="_blank"class="d-flex py-3 px-3 text-decoration-none text-primary border rounded shadow-sm-hover bg-light-hover justify-content-between align-items-center mb-2">How do I…?<i class="fas fa-chevron-circle-right text-info"></i></a> <a href="https://docs.gtk.org/gtk4/question_index.html"target="_blank"class="d-flex py-3 px-3 text-decoration-none text-primary border rounded shadow-sm-hover bg-light-hover justify-content-between align-items-center mb-2">Frequently asked questions sections<i class="fas fa-chevron-circle-right text-info"></i></a> <a href="https://docs.gtk.org/gtk4/getting_started.html"target="_blank"class="d-flex py-3 px-3 text-decoration-none text-primary border rounded shadow-sm-hover bg-light-hover justify-content-between align-items-center mb-2">Creating your first application<i class="fas fa-chevron-circle-right text-info"></i></a> <a href="https://gitlab.gnome.org/GNOME/gtk/tree/master/CONTRIBUTING.md"target="_blank"class="d-flex py-3 px-3 text-decoration-none text-primary border rounded shadow-sm-hover bg-light-hover justify-content-between align-items-center mb-2">Your first contribution to GTK<i class="fas fa-chevron-circle-right text-info"></i></a> <a href="https://wiki.gnome.org/Projects/GTK/BestPractices"target="_blank"class="d-flex py-3 px-3 text-decoration-none text-primary border rounded shadow-sm-hover bg-light-hover justify-content-between align-items-center mb-2">Learn about GTK's best practices<i class="fas fa-chevron-circle-right text-info"></i></a></div></div></div></div></section><section class="py-4 bg-light"id="team"><div class="container"><div class="row text-center d-flex justify-content-center"><div class="col-md-10 col-lg-7"><h2 class="font-weight-light mb-3">We are here to help</h2><span class="text-muted">Catch up with our core team to get answers for your questions.</span></div></div><div class="row d-flex justify-content-center pt-5 mx-auto"><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-timm-bader.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Timm Bäder"> <span><strong>Timm Bäder</strong></span> <span class="small text-muted">Red Hat</span> <a href="https://gitlab.gnome.org/baedert/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-emmanuele-bassi.jpeg"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Emmanuele Bassi"> <span><strong>Emmanuele Bassi</strong></span> <span class="small text-muted">Igalia</span> <a href="https://gitlab.gnome.org/ebassi/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-matthias-clasen.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Matthias Clasen"> <span><strong>Matthias Clasen</strong></span> <span class="small text-muted">Red Hat</span> <a href="https://gitlab.gnome.org/matthiasc/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-carlos-garnacho.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Carlos Garnacho"> <span><strong>Carlos Garnacho</strong></span> <span class="small text-muted">Red Hat</span> <a href="https://gitlab.gnome.org/carlosg/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-alexander-larsson.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Alexander Larsson"> <span><strong>Alexander Larsson</strong></span> <span class="small text-muted">Red Hat</span> <a href="https://gitlab.gnome.org/alexl/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-benjamin-otte.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Benjamin Otte"> <span><strong>Benjamin Otte</strong></span> <span class="small text-muted">Red Hat</span> <a href="https://gitlab.gnome.org/otte/"class="stretched-link"></a></div></div><div class="col-6 col-md-4 col-lg-3 mb-3 px-0 px-md-3"><div class="d-flex flex-column align-items-center text-center shadow-sm-hover py-3 bg-white rounded"><img src="https://www.gtk.org/assets/img/team-philip-withnall.png"class="pb-2 img-fluid rounded-circle"style="max-width: 100px"alt="GTK Team Member Philip Withnall"> <span><strong>Philip Withnall</strong></span> <span class="small text-muted">Unaffiliated</span> <a href="https://gitlab.gnome.org/pwithnall/"class="stretched-link"></a></div></div></div></div></section><script src="https://www.gtk.org/assets/jquery/dist/jquery.min.js"></script><script src="https://www.gtk.org/assets/popper.js/dist/umd/popper.min.js"></script><script src="https://www.gtk.org/assets/bootstrap/dist/js/bootstrap.min.js"></script><script>var btnTop = $("#btn-go-to-top"); $(window).scroll(function() { if ($(window).scrollTop() < 400) { btnTop.addClass("d-none"); } else { btnTop.removeClass("d-none"); } }); btnTop.on("click", function(e) { e.preventDefault(); $("html, body").animate({scrollTop: 0}); });</script><footer class="container-fluid bg-dark navbar-dark text-info py-4 small"><div class="container"><div class="row"><div class="col-sm-5 col-lg-4 py-3 py-sm-2"><a href="https://www.gnome.org/"><img src="https://www.gtk.org/assets/img/logo-gnome-horizontal.svg"class="img-fluid pb-2"width="100"></a><p>GTK is hosted by GNOME.</p><p>GTK is maintained by the <a href="https://www.gtk.org/community#contributors"class="text-muted font-weight-bold">GTK Team</a>.</p><p>&copy; 1997-2025, The GTK Team. All Rights Reserved.</p><p>GTK and the GTK logo are <a href="https://foundation.gnome.org/legal-and-trademarks/"class="text-muted font-weight-bold">trademarks of the GNOME Foundation</a>.</p></div><div class="col-sm-7 col-lg-5 py-3 py-sm-2"><div class="d-flex"><div class="col pl-0"><h6 class="text-muted">PROJECT</h6><ul class="list-unstyled text-small"><li><a href="https://www.gtk.org/"class="text-info">GTK</a></li><li><a href="https://www.gtk.org/features/"class="text-info">Features</a></li><li><a href="https://www.gtk.org/docs/"class="text-info">Docs</a></li><li><a href="https://download.gnome.org/sources/gtk/"class="text-info">Downloads</a></li><li><a href="https://gitlab.gnome.org/GNOME/gtk/tree/master/COPYING"class="text-info">License</a></li><li><a href="https://gitlab.gnome.org/GNOME/gtk/-/releases"class="text-info">Releases</a></li><li><a href="https://gitlab.gnome.org/GNOME/gtk/"class="text-info">Code</a></li></ul></div><div class="col pl-0"><h6 class="text-muted">SUPPORT</h6><ul class="list-unstyled text-small"><li><a href="https://docs.gtk.org/gtk4/question_index.html"class="text-info">FAQs</a></li><li><a href="https://gitlab.gnome.org/GNOME/gtk/issues/new"class="text-info">Report a Bug</a></li><li><a href="https://gitlab.gnome.org/GNOME/gtk/issues/new"class="text-info">Request a feature</a></li></ul></div><div class="col pl-0"><h6 class="text-muted">COMMUNITY</h6><ul class="list-unstyled text-small"><li><a href="https://www.gtk.org/community/"class="text-info">Community</a></li><li><a href="https://blog.gtk.org/"class="text-info">Development Blog</a></li><li><a href="https://discourse.gnome.org"class="text-info">Discussion</a></li><li><a href="https://conduct.gnome.org"class="text-info">Code of Conduct</a></li><li><a href="http://www.gnome.org/donate"class="text-info">Donate</a></li></ul></div></div></div><div class="col-sm-12 col-lg-3 py-3 py-sm-2"><h5>About the Site</h5><ul class="list-unstyled text-small"><li>Hosted on <a href="https://gitlab.gnome.org/Teams/Websites/www.gtk.org"class="text-muted font-weight-bold">Gitlab</a>.</li><li>Powered by <a href="https://jekyllrb.com/"class="text-muted font-weight-bold">Jekyll</a>.</li><li>Report <a href="https://gitlab.gnome.org/Teams/Websites/www.gtk.org/-/issues/new"class="text-muted font-weight-bold">an issue</a>.</li></ul><ul class="list-unstyled list-inline text-small"><li class="list-inline-item"><a href="https://gitlab.gnome.org/GNOME/gtk/"rel="me"class="text-muted text-primary"><i class="fab fa-gitlab"></i></a></li><li class="list-inline-item"><a href="https://discourse.gnome.org/c/platform/core/"rel="me"class="text-muted text-primary"><i class="fab fa-discourse"></i></a></li><li class="list-inline-item"><a href="https://floss.social/@GTK"rel="me"class="text-muted text-primary"><i class="fab fa-mastodon"></i></a></li></ul></div></div></div></footer></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10