next up previous contents
Next: Menüelemente Up: Ein internes GUIOBJECT erzeugen Previous: Widgets

Canvasitems

Für die Erzeugung von Canvas-Objekten gibt es eine ähnliche Funktion im Modul CanvasItemAux:

createCanvasItem :: CanvasItem w =>
                    Canvas ->              -- enthaltender Canvas
                    CanvasItemKind ->      -- Objekttyp
                    (GUIOBJECT -> w) ->    -- Wrap
                    [Config w] ->          -- Konfigurationsoptionen
                    Coord ->               -- initiale Position
                    IO w
Diese Funktion gibt im Gegensatz zur oben erwähnten createGUIObject keinen GUIOBJECT-Wert, sondern das ,,echte'' Canvas-Objekt zurück (createGUIObject ist allgemeiner, da es auch von den Funktionen createCanvasItem und createMenuItem, s.u., benutzt wird). Da diese Funktion somit auch die externe Repräsentation des Objektes kennt, ist es hier auch möglich, die Liste der Konfigurationen mit zu übergeben. Diese werden dann automatisch angewendet. Parameter dieser Funktion sind: Ein Beispiel (der Linien-Konstruktor aus dem Modul Line):
createLine :: Canvas -> [Config Line] -> IO Line
createLine cnv ol = createCanvasItem cnv LINE Line ol [(0,0),(0,0)]



Christoph Lueth
Wed May 29 14:12:28 MEST 2002