Si, sé que está obsoleto, pero tiene cosas que el componente de SDL2 no tiene.
Ninguno de los dos está completo...
En uno de los ejemplos que estoy haciendo tengo la ventana con un color de fondo.
Es como un azul oscuro, pero sin llegar a ser Color.DarkBlue.
La configuración del color es (20, 20, 100 ).
Pues probando en una ventana SDL, no hay forma de que me muestre el color bien, me sale un color distinto.
He probado con la clase Paint, perfecto. Pero con SDL no va como quiero.
No sé que hago mal.
Fijaros que va perfecto en el cuadrado. El fondo debería ser del mismo color y el cuadrado no se vería.
Const ANCHOVENTANA As Integer = 640
Const ALTOVENTANA As Integer = 480
Const ANCHOCUADRADO As Integer = 100
Private $hWindow As Window
Public Sub Main()
$hWindow = New Window As "Window"
With $hWindow
.Width = ANCHOVENTANA
.Height = ALTOVENTANA
.Title = "Colores en Ventana SDL"
.Show
.Resizable = False
.FrameRate = 60
'.Fill(Color.RGB(20, 20, 100)) 'Podemos dar color al fondo de la ventana desde aquí
End With
End
Public Sub Window_Draw()
$hWindow.Fill(Color.RGB(20, 20, 100)) ' O tambien desde aquí
'Rellena y pinta del color el cuadrado centrado.
Draw.FillStyle = Fill.Solid
Draw.ForeColor = Color.RGB(20, 20, 100)
Draw.Rect((ANCHOVENTANA - ANCHOCUADRADO) / 2, (ALTOVENTANA - ANCHOCUADRADO) / 2, ANCHOCUADRADO, ANCHOCUADRADO)
End
Public Sub Window_KeyPress()
Select Case Key.Code
Case Key.F1
$hWindow.FullScreen = Not $hWindow.FullScreen
Case Key.Esc
$hWindow.Close
End Select
End
Const ALTOVENTANA As Integer = 480
Const ANCHOCUADRADO As Integer = 100
Private $hWindow As Window
Public Sub Main()
$hWindow = New Window As "Window"
With $hWindow
.Width = ANCHOVENTANA
.Height = ALTOVENTANA
.Title = "Colores en Ventana SDL"
.Show
.Resizable = False
.FrameRate = 60
'.Fill(Color.RGB(20, 20, 100)) 'Podemos dar color al fondo de la ventana desde aquí
End With
End
Public Sub Window_Draw()
$hWindow.Fill(Color.RGB(20, 20, 100)) ' O tambien desde aquí
'Rellena y pinta del color el cuadrado centrado.
Draw.FillStyle = Fill.Solid
Draw.ForeColor = Color.RGB(20, 20, 100)
Draw.Rect((ANCHOVENTANA - ANCHOCUADRADO) / 2, (ALTOVENTANA - ANCHOCUADRADO) / 2, ANCHOCUADRADO, ANCHOCUADRADO)
End
Public Sub Window_KeyPress()
Select Case Key.Code
Case Key.F1
$hWindow.FullScreen = Not $hWindow.FullScreen
Case Key.Esc
$hWindow.Close
End Select
End
Subo el código.
Podía crear un rectángulo y rellenar con el la ventana. Pero no sé si eso es lo normal en SDL.
En PyGame es tan "sencillo" como esto: Añado código para eventos de teclado.
#!/ur/bin/env python3
import pygame, sys
from pygame.locals import *
pygame.init()
reloj = pygame.time.Clock()
AZULOSCURO = ( 20, 20, 100 )
ANCHOVENTANA = 640
ALTOVENTANA = 480
ventana = pygame.display.set_mode((ANCHOVENTANA, ALTOVENTANA))
pygame.display.set_caption("Color de fondo de Ventana")
def main():
while True:
# Eventos de teclado
for evento in pygame.event.get():
if evento.type == QUIT:
sys.exit()
tecla = pygame.key.get_pressed()
if tecla[K_ESCAPE]:
sys.exit()
ventana.fill(AZULOSCURO)
reloj.tick(60)
pygame.display.update()
if __name__=='__main__':main()
import pygame, sys
from pygame.locals import *
pygame.init()
reloj = pygame.time.Clock()
AZULOSCURO = ( 20, 20, 100 )
ANCHOVENTANA = 640
ALTOVENTANA = 480
ventana = pygame.display.set_mode((ANCHOVENTANA, ALTOVENTANA))
pygame.display.set_caption("Color de fondo de Ventana")
def main():
while True:
# Eventos de teclado
for evento in pygame.event.get():
if evento.type == QUIT:
sys.exit()
tecla = pygame.key.get_pressed()
if tecla[K_ESCAPE]:
sys.exit()
ventana.fill(AZULOSCURO)
reloj.tick(60)
pygame.display.update()
if __name__=='__main__':main()
Saludos
EjemploConSDL1VentanaFondoColor.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | EjemploConSDL1VentanaFondoColor.tar.gz | |
Tamaño: | 12.42 KB | |
Descargado: | 49 veces |
EjemploConSDL1VentanaFondoColor.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | EjemploConSDL1VentanaFondoColor.tar.gz | |
Tamaño: | 12.42 KB | |
Descargado: | 49 veces |
EjemploConSDL1VentanaFondoColor.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | EjemploConSDL1VentanaFondoColor.tar.gz | |
Tamaño: | 12.42 KB | |
Descargado: | 49 veces |