Haskell Language
gtk3
Zoeken…
Syntaxis
obj <- <widgetName> Nieuw - Hoe widgets (bijv. Windows, knoppen, rasters) worden gemaakt
set <widget> [<attributes>] - Set attributen zoals gedefinieerd als Attr zelf in widget documentatie (bijv. buttonLabel)
op <widget> <evenement> <IO-actie> - Een IO-actie toevoegen aan een widgets Signaal zelf (bijv. buttonActivated)
Opmerkingen
Op veel Linux-distributies is de Haskell Gtk3-bibliotheek beschikbaar als een pakket in de systeempakketbeheerder (bijv. libghc-gtk in APT van Ubuntu). Echter, voor sommige ontwikkelaars het de voorkeur om een instrument te gebruiken, zoals zou kunnen zijn stack naar geïsoleerde omgevingen te beheren, en hebben GTK3 geïnstalleerd via cabal in plaats van via een wereldwijde installatie van de systemen package manager. Voor deze optie is gtk2hs-buildtools vereist. Voer cabal install gtk2hs-buildtools voordat u gtk , gtk3 of andere op Gtk gebaseerde Haskell-bibliotheken toevoegt aan de build-depends ingang van uw project in uw cabal-bestand.
Hallo wereld in Gtk
Dit voorbeeld laat zien hoe je een eenvoudige "Hallo wereld" kunt maken in Gtk3, waarmee een venster en knopwidgets wordt ingesteld. De voorbeeldcode laat ook zien hoe verschillende attributen en acties op de widgets kunnen worden ingesteld.
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