Tema: Pygame Dudas
Ver Mensaje Individual
  #9 (permalink)  
Antiguo 08/07/2009, 06:38
Avatar de minkweb
minkweb
 
Fecha de Ingreso: septiembre-2005
Mensajes: 443
Antigüedad: 18 años, 8 meses
Puntos: 14
Respuesta: Pygame Dudas

Claro, no no use hilos, aun no los manejo bien, me ayude con un script q andaba rodando x la internet look


Código Python:
Ver original
  1. # Proof of concept for PyGTK+Pygame
  2. # Seo Sanghyeon
  3.  
  4. import os, pygame, gtk
  5. import random
  6.  
  7. def pygame_hack(widget):
  8.     def callback(widget, *args):
  9.         handle = widget.window.handle
  10.         size = widget.size_request()
  11.         os.environ['SDL_WINDOWID'] = str(handle)
  12.         pygame.display.init()
  13.         pygame.display.set_mode(size)
  14.     widget.connect('map-event', callback)
  15.  
  16. def fill_random(widget):
  17.     screen = pygame.display.get_surface()
  18.     r = random.randrange(255)
  19.     g = random.randrange(255)
  20.     b = random.randrange(255)
  21.     screen.fill((r, g, b))
  22.     pygame.display.flip()
  23.  
  24. def main():
  25.     win = gtk.Window()
  26.     win.connect('destroy', gtk.main_quit)
  27.  
  28.     box = gtk.VBox()
  29.     win.add(box)
  30.  
  31.     custom = gtk.DrawingArea()
  32.     custom.set_size_request(300, 200)
  33.     pygame_hack(custom)
  34.     box.pack_start(custom)
  35.  
  36.     button = gtk.Button('Random fill')
  37.     button.connect('clicked', fill_random)
  38.     box.pack_start(button)
  39.  
  40.     win.show_all()
  41.     gtk.main()
  42.  
  43. if __name__ == '__main__':
  44.     main()

Basicamente encapsula un area de dibujo en una vbox y con esto

os.environ['SDL_WINDOWID'] = str(handle)

obliga a pygame a ejecutarce en la ventana del widget de dibujo, pero si lo ejecutas fijate q el area de SDL se queda suspendida arriba y si se mueve la ventana de PyGtk la de SDL continua suspendida y no se mueve con la ventana PyGtk(a no ser q lo amplies a pantalla completa)

pero estoy seguro q tibia utiliza algun tipo de GUI propia para su chat pues no tiene apariencia de textbox, simplemente al hacer select con el mouse deben obtener d alguna manera el texto dibujado

Saludos ;)
__________________
Juegos
Juegos iphone