dx_GFX_class: Frame

# Frame

Procesa las llamadas a las funciones de dibujo y muestra en pantalla el contenido del backbuffer.

     Public Function Frame(
    	  Optional Color As Long,
    	  Optional MaxFrames As Integer,
    	  Optional Clear As Boolean = True ) As Long

#### Argumentos

Color
  Optional. Long. Valor ARGB que representa el color que se usara en el borrado de pantalla una vez finalizado el proceso de volcado de gráficos en pantalla. Si no se especifica valor alguno se toma el valor ARGB 0,0,0,0.
MaxFrames
  Optional. Integer. Valor que representa el numero máximo de cuadros por segundo que alcanzara el programa. Si el valor es 0 el programa ejecutara tantos cuadros por segundo como pueda. Un valor aconsejable para lograr fluidez en pantalla suele ser 60 cuadros por segundo.
Clear
Optional. Boolean. Valor que indica si se limpia la pantalla antes de pintar.

Default: True

#### Resultado

Long - Devuelve GFX_OK si la función ha finalizado correctamente, GFX_DEVICELOST si el control del dispositivo grafico se ha perdido, GFX_DEVICENOTRESET si el dispositivo grafico no se puede recuperar y GFX_UNKNOWNERROR si se produce cualquier otro error.

#### Comentarios

Esta es la función clave de la clase grafica ya que es la encargada de procesar todos los datos y las llamadas realizadas y volcar el resultado en pantalla. Dicha función determina el contenido de un cuadro en pantalla y es la responsable de realizar los cálculos de cuadros por segundo que devuelve la propiedad FPS ("Frames Per Second", Cuadros por Segundo). Esta función solo puede ser llamada una vez en cada vuelta del bucle principal del programa. Después de ejecutarse, esta función limpia el contenido del backbuffer y así el de la pantalla preparándolo para las nuevas llamadas a las funciones de dibujo que compondrán el siguiente cuadro en pantalla.

No es necesario introducir la instrucción DoEvents de Visual Basic en el bucle principal del programa ya que Frame se encarga de hacer una llamada automáticamente justo al terminar de ejecutarse para así refrescar la pila de eventos del sistema operativo y evitar el cuelgue del programa.

En caso de que la ventana donde se esta dibujando pierda el foco en modo a pantalla completa, ya sea por hacer una combinación de teclas como Alt+Tab o por minimizar la ventana o por realizar un cambio de modo de video mediante DEVICE_SetDisplayMode por ejemplo, dx_lib32 perderá el control de dispositivo grafico. En cuanto esto ocurre dx_lib32 trata de recuperar el control del dispositivo aunque a veces puede suceder que esto no ocurra. En cuyo caso se debería reinicializar la clase dx_GFX.

#### Vea también

Proyecto dx_lib32 Descripción Clase dx_GFX_class Descripción dx_GFX_class Propiedades dx_GFX_class Metodos FPS (get) GFX_ErrorCodes