我正在使用拼贴画,因此元素将被放置在框的中间。
import Graphics.Element exposing (show)
import Graphics.Collage exposing (collage)
textBox =
show "hello world"
main =
collage 1000 1000 [textBox]
但最后一行有一个typemismatch错误,
Graphics.Element.Element
Graphics.Collage.Form
由于show
函数返回Element
,而collage
仅接受Form
。我可以使用哪些其他功能,将文本内容放在collage
?
答案 0 :(得分:4)
您可以使用Graphics.Collage.toForm
将元素转换为表单toForm : Element -> Form
http://package.elm-lang.org/packages/elm-lang/core/2.1.0/Graphics-Collage#toForm
你的程序只是
main = collage 1000 1000 [toForm textBox]
答案 1 :(得分:4)
grumpyjames'回答是关于将Element
转换为Form
以将它们放在拼贴上的答案。我只是想指出,你不需要使用拼贴画将Element
放在中心。 Graphics.Element
包具有container功能,其功能与拼贴相似,但Element
代替Form
。所以你也可以这样做:
import Graphics.Element exposing (..)
main =
container 1000 1000 middle (show "Hello, World!")