Ricerca…


Sintassi

  • obj <- <widgetName> Nuovo - Come vengono creati i widget (ad es. Windows, pulsanti, griglie)

  • set <widget> [<attributi>] - Imposta gli attributi come definito come Attr auto nella documentazione del widget (es. buttonLabel)

  • su <widget> <evento> <azione IO> - Aggiunta di un'azione IO a un widget Segnale auto (ad es. pulsante Attivato)

Osservazioni

In molte distribuzioni Linux, la libreria Haskell Gtk3 è disponibile come pacchetto nel gestore dei pacchetti di sistema (ad es. libghc-gtk nell'APT di Ubuntu). Tuttavia, per alcuni sviluppatori potrebbe essere preferibile utilizzare uno strumento come lo stack per gestire ambienti isolati e avere Gtk3 installato tramite cabal anziché tramite un'installazione globale da parte del gestore di pacchetti di sistema. Per questa opzione, è richiesto gtk2hs-buildtools . Esegui cabal install gtk2hs-buildtools prima di aggiungere gtk , gtk3 o qualsiasi altra libreria Haskell basata su Gtk alla voce build-depends gtk3 tuo progetto nel tuo file cabal.

Ciao mondo in Gtk

Questo esempio mostra come si può creare un semplice "Hello World" in Gtk3, impostando una finestra e i widget dei pulsanti. Il codice di esempio mostrerà anche come impostare diversi attributi e azioni sui widget.

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


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow