QT

2014-11-25 4 views
0

Qt에서 paintGL을 명시 적으로 호출하면이 게시물에 언급 된 이벤트로 인해 paintGL 메서드가 자동으로 호출됩니다. When is QGLWidget's paintGL called?. 클래스 함수 중 하나에서 paintGL 메서드를 명시 적으로 호출해야하는 경우 어떻게해야합니까? void CubeView :: update() { QMatrix4x4 월드; double posx = drawcursor(); world.translate (posx, 0,0); 큐브 -> setLocalTransform (월드); std :: cout < < "hi \ n"; // QGLPainter 페인트; // paintGL (& 페인트);QT

다음은 이전의 질문에 대한 답변입니다.

1. qt에서 paintGL 메소드를 명시 적으로 호출 할 수 없습니다. 2. QGLView 클래스에는 updateGL 메소드가 없습니다. QGLWidget이 가지고 있습니다. 이 내 질문을 바탕으로

있습니다

  1. 내가 qt3d에 QGL 위젯 클래스를 사용할 수 있습니다. QGL 빌더 등의 모든 기능을 여기에서 사용할 수 있습니까?
  2. updategl 메소드 대신 사용할 수있는 qglview의 메소드가 있습니까? paintgl 클래스보다 먼저 호출되는 메소드는 무엇입니까? paintgl 전에 매번 검사되는 기능.

답변

0

이벤트 처리를 기다리지 않고 강제로 다시 칠하려면 QGLWidget::updateGL()으로 호출하면됩니다. 이런 식으로 paintGL이 즉시 호출됩니다.

+0

죄송합니다, 나는 qt3d를 사용하고 QGLView 클래스를 사용하고 있다는 것을 잊어 버렸습니다. initializeGL 및 paintGL 메서드가 있지만 updateGL 메서드가 없습니다. 또는 qt3d에서 대체 방법으로 대체 할 수있는 방법이 있습니까? –