Haskell Language
Gtk3
Suche…
Syntax
obj <- <widgetName> Neu - Wie Widgets (z. B. Windows, Schaltflächen, Raster) erstellt werden
set <widget> [<attributes>] - Setze Attribute wie in der Widget-Dokumentation als Attr self definiert (zB buttonLabel)
auf <widget> <event> <E / A-Aktion> - Hinzufügen einer E / A-Aktion zu einem Widgets Signal self (zB buttonActivated)
Bemerkungen
Auf vielen Linux-Distributionen ist die Haskell Gtk3-Bibliothek als Paket im Paketmanager des Systems verfügbar (z. B. libghc-gtk
in Ubuntus APT). Für einige Entwickler kann es jedoch vorzuziehen sein, ein Tool wie stack
für die Verwaltung von isolierten Umgebungen zu verwenden und Gtk3 über cabal
statt über eine globale Installation durch den Systempaketmanager installieren zu lassen. Für diese Option ist gtk2hs-buildtools
erforderlich. Führen Sie cabal install gtk2hs-buildtools
vor dem Hinzufügen von gtk
, gtk3
oder anderen GTK-basierten Haskell - Bibliotheken , um Ihre Projekte build-depends
Eintrag in Ihrer Clique Datei.
Hallo Welt in Gtk
Dieses Beispiel zeigt, wie man eine einfache "Hello World" in Gtk3 erstellen kann, indem ein Fenster und Schaltflächen-Widgets eingerichtet werden. Der Beispielcode zeigt außerdem, wie verschiedene Attribute und Aktionen für die Widgets festgelegt werden.
module Main (Main.main) where
import Graphics.UI.Gtk
main :: IO ()
main = do
initGUI
window <- windowNew
on window objectDestroy mainQuit
set window [ containerBorderWidth := 10, windowTitle := "Hello World" ]
button <- buttonNew
set button [ buttonLabel := "Hello World" ]
on button buttonActivated $ do
putStrLn "A \"clicked\"-handler to say \"destroy\""
widgetDestroy window
set window [ containerChild := button ]
widgetShowAll window
mainGUI -- main loop