是否有一个函数,类似于Haskell中的JS screen.width
和screen.height
,带有光泽图形库,它返回屏幕宽度和高度?
答案 0 :(得分:3)
我认为光泽本身不会导出此功能,但您可以使用GLFW包中的这些调用来确定屏幕分辨率:
import Graphics.UI.GLFW
main = do
initialize
desktopMode >>= print
putStrLn "all video modes:"
videoModes >>= mapM_ print
请注意,gloss
可以编译为使用GLUT或GLFW。如果gloss使用GLFW作为Open GL的接口,它将在您创建窗口时调用GLFW的initialize
函数,并且在同一进程中调用initialize
两次可能存在问题,但我有点怀疑它
然后,您可以在使用FullScreen
构造函数创建光泽窗口时使用这些尺寸来设置可绘制区域。
答案 1 :(得分:1)
Graphics.Gloss.Interface.Environment
中有个函数叫getScreenSize
,它返回一个IO (Int,Int)
,第一个值是width,第二个值是height。