Ergebnis für URL: http://www.gtk.org/ [1] [logo-gtk-sm.png] GTK
[2]Features [3]Docs [4]Community [5]Code [6]Development Blog
(BUTTON)
Create apps that users just love
Offering a complete set of UI elements, GTK is suitable for projects ranging from
small one-off tools to complete application suites.
[7]Learn GTK
[8]Downloads
[9]Linux [10]Windows [11]MacOS
Latest stable 4.14.4
Latest unstable 4.15.1
Latest old stable 3.24.42
GTK Community Wallpaper
Work with the language of your choice
Develop your GTK app with your language of choice by using Language Bindings or
wrappers and take full advantage of the official GNOME bindings which guarantee
API stability and time-based releases.
[12]C [13]JavaScript [14]Perl [15]Python [16]Rust [17]Vala
// Include gtk
#include
static void on_activate (GtkApplication *app) {
// Create a new window
GtkWidget *window = gtk_application_window_new (app);
// Create a new button
GtkWidget *button = gtk_button_new_with_label ("Hello, World!");
// When the button is clicked, close the window passed as an argument
g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_window_close), window);
gtk_window_set_child (GTK_WINDOW (window), button);
gtk_window_present (GTK_WINDOW (window));
}
int main (int argc, char *argv[]) {
// Create a new application
GtkApplication *app = gtk_application_new ("com.example.GtkApplication",
G_APPLICATION_FLAGS_NONE);
g_signal_connect (app, "activate", G_CALLBACK (on_activate), NULL);
return g_application_run (G_APPLICATION (app), argc, argv);
}
imports.gi.versions['Gtk'] = '4.0';
const Gtk = imports.gi.Gtk;
// Create a new application
let app = new Gtk.Application({ application_id: 'com.example.GtkApplication' });
// When the application is launched...
app.connect('activate', () => {
// ... create a new window ...
let win = new Gtk.ApplicationWindow({ application: app });
// ... with a button in it ...
let btn = new Gtk.Button({ label: 'Hello, World!' });
// ... which closes the window when clicked
btn.connect('clicked', () => { win.close(); });
win.set_child(btn);
win.present();
});
// Run the application
app.run([]);
#!/usr/bin/env perl
use strict; use warnings; use utf8;
use Glib::IO;
use Gtk4;
# Create a new application
my $app =
Gtk3::Application->new('com.example.Gtk3Application', 'G_APPLICATION_FLAGS_NONE');
# When the application is launched...
$app->signal_connect(
activate => sub {
my $app = shift;
# ... create a new window ...
my $win = Gtk3::ApplicationWindow->new($app);
# ... with a button in it ...
my $btn = Gtk3::Button->new('Hello World!');
# ... which closes the window when clicked
$btn->signal_connect(clicked => sub { $win->close(); });
$win->set_child($btn);
$win->present();
}
);
# Run the application
$app->run(\@ARGV);
# Load Gtk
import gi
gi.require_version('Gtk', '4.0')
from gi.repository import Gtk
# When the application is launched...
def on_activate(app):
# ... create a new window...
win = Gtk.ApplicationWindow(application=app)
# ... with a button in it...
btn = Gtk.Button(label='Hello, World!')
# ... which closes the window when clicked
btn.connect('clicked', lambda x: win.close())
win.set_child(btn)
win.present()
# Create a new application
app = Gtk.Application(application_id='com.example.GtkApplication')
app.connect('activate', on_activate)
# Run the application
app.run(None)
use glib::clone;
// glib and other dependencies are re-exported by the gtk crate
use gtk::glib;
use gtk::prelude::*;
// When the application is launched...
fn on_activate(application: >k::Application) {
// ... create a new window ...
let window = gtk::ApplicationWindow::new(application);
// ... with a button in it ...
let button = gtk::Button::with_label("Hello World!");
// ... which closes the window when clicked
button.connect_clicked(clone!(@weak window => move |_| window.close()));
window.set_child(Some(&button));
window.present();
}
fn main() {
// Create a new application with the builder pattern
let app = gtk::Application::builder()
.application_id("com.github.gtk-rs.examples.basic")
.build();
app.connect_activate(on_activate);
// Run the application
app.run();
}
int main (string[] argv) {
// Create a new application
var app = new Gtk.Application ("com.example.GtkApplication",
GLib.ApplicationFlags.FLAGS_NONE);
app.activate.connect (() => {
// Create a new window
var window = new Gtk.ApplicationWindow (app);
// Create a new button
var button = new Gtk.Button.with_label ("Hello, World!");
// When the button is clicked, close the window
button.clicked.connect (() => {
window.close ();
});
window.set_child (button);
window.present ();
});
return app.run (argv);
}
Apps built with GTK
Developers around the world have used GTK as a platform to create apps that solve
problems faced by end-users.
[18]GIMP GIMP
[19]Fonts Fonts
[20]Calculator Calculator
[21]Dictionary Dictionary
[22]Games Games
[23]Evolution Evolution
[24]Image Viewer Image Viewer
[25]Polari Polari
[26]Key Sign Key Sign
[27]Maps Maps
[28]Transmission Transmission
[29]Password Safe Password Safe
A feature-rich development tool
GTK has all the features that a widget toolkit needs to have. These features make
it the most trusted toolkit for developing Linux applications.
Portability
Projects built using GTK and its dependencies run on well known operating
systems.
Stability
GTK delivers the enticing features and superb performance which adds to your
applications.
Language Bindings
GTK is written in C but has been designed to support a wide range of languages
such as Python, JavaScript, C++, Rust and [30]many more.
Interfaces
GTK has a comprehensive collection of core widgets like Buttons, Windows,
Toolbars for use in your application.
Open Source
GTK is a free and open-source project maintained by GNOME and an active community
of contributors. GTK is released under the terms of the [31]GNU Lesser General
Public License.
API
GTK boasts of an easy to use [32]API which helps in decreasing your development
time and help you achieve better results.
Accommodation
GTK caters to many features like Native look and feel, theme support,
Object-oriented approach that today's developers look for in a toolkit.
Foundations
GTK is built on top of GLib. GLib provides the fundamental data types and system
integration points to avoid duplicated code in applications.
Develop with GTK
By taking advantage of GTK being a cross-platform development tool and its easy
to use API, you can develop amazing apps using the GTK. If you are interested in
developing an app, get started now by developing this [33]example application.
Develop GTK
GTK is a large project and relies on volunteers from around the world. To help us
with the project development, hack away on the existing [34]bugs and feature
requests.
Looking for Help?
If you want to ask questions about GTK, whether it's for developing applications
with GTK or contributing to GTK itself, you can use the GNOME [35]Discourse
instance, under the [36]Platform/Core category. You can use tags like gtk or glib
to narrow down the topic of discussion to specific libraries. You can also ask
questions in our [37]Matrix room.
News and Events
Catch up with GTK development
Get in touch with GTK developers through [38]Matrix. Get updates about GTK and
its community from [39]GTK blog or on [40]Mastodon.
Meet the community
As regularly as possible, GTK team meetings take place at [41]conferences and
[42]hackfests to discuss the future of GTK and define a [43]roadmap.
Contribute to GTK
If you are a developer and want to contribute to GTK, you are more than
[44]welcome to do so.
[45][logo-gnome-horizontal.svg]
GTK is hosted by GNOME.
GTK is maintained by the [46]GTK Team.
© 1997-2024, The GTK Team. All Rights Reserved.
GTK and the GTK logo are [47]trademarks of the GNOME Foundation.
PROJECT
* [48]GTK
* [49]Features
* [50]Docs
* [51]Downloads
* [52]License
* [53]Releases
* [54]Code
SUPPORT
* [55]FAQs
* [56]Report a Bug
* [57]Request a feature
COMMUNITY
* [58]Community
* [59]Development Blog
* [60]Discussion
* [61]Code of Conduct
* [62]Donate
About the Site
* Hosted on [63]Gitlab.
* Powered by [64]Jekyll.
* Report [65]an issue.
*
*
*
References
Visible links:
1. https://www.gtk.org/
2. https://www.gtk.org/features/
3. https://www.gtk.org/docs/
4. https://www.gtk.org/community/
5. https://gitlab.gnome.org/GNOME/gtk/
6. https://blog.gtk.org/
7. https://www.gtk.org/docs/
8. https://www.gtk.org/
9. https://www.gtk.org/docs/installations/linux/
10. https://www.gtk.org/docs/installations/windows/
11. https://www.gtk.org/docs/installations/macos/
12. https://www.gtk.org/#list-c
13. https://www.gtk.org/#list-javascript
14. https://www.gtk.org/#list-pl
15. https://www.gtk.org/#list-py
16. https://www.gtk.org/#list-rs
17. https://www.gtk.org/#list-vala
18. https://gimp.org/
19. https://flathub.org/apps/details/org.gnome.font-viewer
20. https://wiki.gnome.org/Apps/Calculator
21. https://wiki.gnome.org/Apps/Dictionary
22. https://wiki.gnome.org/Apps/Games
23. https://wiki.gnome.org/Apps/Evolution
24. https://wiki.gnome.org/Apps/EyeOfGnome
25. https://wiki.gnome.org/Apps/Polari
26. https://wiki.gnome.org/Apps/Keysign
27. https://wiki.gnome.org/Apps/Maps
28. https://transmissionbt.com/
29. https://gitlab.gnome.org/World/PasswordSafe
30. https://www.gtk.org/docs/language-bindings/
31. https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
32. https://www.gtk.org/docs/apis/
33. https://docs.gtk.org/gtk4/getting_started.html
34. https://gitlab.gnome.org/GNOME/gtk/issues/
35. https://discourse.gnome.org/
36. https://discourse.gnome.org/c/platform/core
37. https://matrix.to/#/#gtk:gnome.org
38. https://matrix.to/#/#gtk:gnome.org
39. https://blog.gtk.org/
40. https://floss.social/@GTK
41. https://guadec.org/
42. https://wiki.gnome.org/Hackfests
43. https://wiki.gnome.org/Projects/GTK/Roadmap
44. https://www.gtk.org/docs/getting-started/
45. https://www.gnome.org/
46. https://www.gtk.org/community#contributors
47. https://foundation.gnome.org/legal-and-trademarks/
48. https://www.gtk.org/
49. https://www.gtk.org/features/
50. https://www.gtk.org/docs/
51. https://download.gnome.org/sources/gtk/
52. https://gitlab.gnome.org/GNOME/gtk/tree/master/COPYING
53. https://gitlab.gnome.org/GNOME/gtk/-/releases
54. https://gitlab.gnome.org/GNOME/gtk/
55. https://docs.gtk.org/gtk4/question_index.html
56. https://gitlab.gnome.org/GNOME/gtk/issues/new
57. https://gitlab.gnome.org/GNOME/gtk/issues/new
58. https://www.gtk.org/community/
59. https://blog.gtk.org/
60. https://discourse.gnome.org/
61. https://conduct.gnome.org/
62. http://www.gnome.org/foundation/
63. https://gitlab.gnome.org/Teams/Websites/www.gtk.org
64. https://jekyllrb.com/
65. https://gitlab.gnome.org/Infrastructure/gtk-web/-/issues/new
Hidden links:
67. https://www.gtk.org/
68. https://gitlab.gnome.org/GNOME/gtk/
69. https://discourse.gnome.org/c/platform/core/
70. https://floss.social/@GTK
Usage: http://www.kk-software.de/kklynxview/get/URL
e.g. http://www.kk-software.de/kklynxview/get/http://www.kk-software.de
Errormessages are in German, sorry ;-)