Das Funktiniert auch alles Wunderbar, nur in einigen Fällen, wenn man das Fenster Vergrößert wird nicht der Resize-Handler aufgerufen doer er macht nicht das was er soll. Es ist mir bisher nur passiert, das es nicht richitg Funktionierte, wenn man das Fenster auf Fullscreen schaltet. Die zu Grunde liegende SimpleOpenGlCOntrol hat Dock auf Fill, also wird sie definitv vergrößert.
Hier der Event-handler Code:
Code: Alles auswählen
private void renderContext_Resize(object sender, EventArgs e)
{
vertikalStretch = (float)renderContext.Height / (float)startUpWindowHeight;
horizontalStretch = (float)renderContext.Width / (float)startUpWindowWidth;
Resize(renderContext.Height, renderContext.Width);
}
private void Resize(int height, int width)
{
Gl.glViewport(0, 0, width, height);
Gl.glMatrixMode(Gl.GL_PROJECTION);
Gl.glLoadIdentity();
const float nRange = 80.0f;
if (height == 0)
{
height = 1;
}
Gl.glOrtho(-nRange * width / height,
nRange * width / height,
-nRange, nRange, -1.0, 1.0);
Gl.glMatrixMode(Gl.GL_MODELVIEW);
Gl.glLoadIdentity();
}
Danke für Hilfe.
MfG cloidnerux.