Qt中openGL的四个重要事件(initializeGL() resizeGL() paintGL() pdateGL())调用规则
initializeGL函数由于是初始化,所以只调用一次而resizeGL和paintGL会多次调用resizeGL在正常的情况下,触发的条件是,窗口大小发生变化时,resizeGL被调用,之后会触发paint事件,从而调用paintGL()事件处理器。paintGL在正常的情况下,只要你移动窗口的位置,就会马上触发paint事件,从而调用paintGL事件处理器。当然,还有窗口在隐藏和...
·
initializeGL函数由于是初始化,所以只调用一次
而resizeGL和paintGL会多次调用
resizeGL在正常的情况下,触发的条件是,窗口大小发生变化时,resizeGL被调用,之后会触发paint事件,从而调用paintGL()事件处理器。
paintGL在正常的情况下,只要你移动窗口的位置,就会马上触发paint事件,从而调用paintGL事件处理器。当然,还有窗口在隐藏和显示之间变换时,也会触发paint事件,从而调用paintGL事件处理器。
总结:
1:initializeGL()函数只在程序开始时运行一次,之后不会再运行
2:resizeGL()只在在窗口尺寸发生变化时,会自动运行,然后触发paint事件,从而调用paintGL()事件处理函数
3:paintGL()会在窗口位置移动时被调用,或是窗口在隐藏和显示之间变换时,被调用
4.updateGL()功能是触发paintGL()
更多推荐




所有评论(0)