Einzelnen Beitrag anzeigen

Nuclear-Ping
(Gast)

n/a Beiträge
 
#1

Fehler beim OpenGL stoppen

  Alt 19. Aug 2004, 13:09
Hallo,

auf einer extra Form lasse ich per OpenGL Berechnungsergebnisse grafisch ausgeben und der Benutzer kann diese dann mit der Maus rotieren, zoomen und bewegen.

Mein Problem was ich jetzt dabei habe ist, dass das Programm die OpenGL-Ausgaben weiterberechnet, selbst wenn die Form geschlossen wird. Also dachte ich mir, dass die Lösung des Problems darin liegt, in FormClose einfach das OpenGL wieder zu beenden:

Delphi-Quellcode:
procedure TOpenGLOutput.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  OpenGLInit := FALSE;

  DeactivateRenderingContext;
  DestroyRenderingContext (RC);
  CloseOpenGL;
end;
Allerdings bricht er mit einer Exception ab, markiert "DeactivateRenderingContext" und meint dazu "Unbalanced deactivation".

Wo ist hier das Problem und wie kann ich das OpenGL korrekt beenden, wenn die Form geschlossen wird?

Grüße,
Mario
  Mit Zitat antworten Zitat