|
void MLV_create_window |
( |
const char * |
window_name, |
|
|
const char * |
icone_name, |
|
|
unsigned int |
width, |
|
|
unsigned int |
height |
|
) |
| |
Créé une fenêtre dont la taille, et les différents noms sont passés en paramètres.
Cette fonction initialise la bibliothèque MLV. Un programme donné ne peut pas ouvrir plus d'une fenêtre à la fois. Les paramètres largeur et hauteur peuvent éventuellement prendre des valeurs négatives. Dans ce cas, la fenêtre est dessinée en plein écran.
- Bogue:
- BOGUES WINDOWS ET MACOSX UNIQUEMENT
Sous Windows uniquement, la fenêtre crée ne peut pas toujours être fermée à l'aide de la croix. En effet, la bibliothèque MLV implémente une fermeture automatique de la fenêtre lorsque l'utilisateur utilise la croix. Or, ce mécanisme utilise les threads SDL qui ne sont malheureusement pas bien supportés sous Windows et MacOSX.
En fait, la bibliothèque MLV utilise un second thread pour récuperer en permanance tous les évènements SDL de la pile et pour les traiter au fur et à mesure de leurs apparitions. OR, sous Windos et Mac OS X, comme les threads ne fonctionnent pas, la bibliothèque ne peux pas lire les évènements systèmes comme ceux de la fermeture de la fenêtre. Elle n'est donc plus informée de ce qui ce passe. Pour permettre à la bibliothèque de récupérer ces informations, il vous suffit de demander un évènement à l'aide de la fonction : MLV_get_event(). Cela obligera la bibliothèque MLV à dépiler et à traiter tous les évènements SDL de la pile. Cela aura pour conséquence de traiter l'évènement système de la fermeture de la fenêtre. Dans l'implémentation des fonctions : MLV_wait_keyboard(), MLV_wait_mouse(), etc ..., nous utilisons la fonction MLV_get_event(). C'est pourquoi, la croix fonctionne correctement lorsque le programme est en attente d'une information provenant de l'utilisateur.
- Paramètres
-
window_name | Le nom de la fenêtre. |
icone_name | Le nom de l'icône de la fenêtre. |
width | La largeur de la fenêtre. |
height | La hauteur de la fenêtre. |
- Exemples:
- advanced/01_texts_and_boxes.c, advanced/02_font.c, advanced/04_sound.c, advanced/05_playlist.c, advanced/06_image.c, advanced/07_transparency.c, advanced/08_zone_click.c, advanced/09_animation.c, advanced/11_animation_book.c, beginner/01_hello_world.c, beginner/02_shapes.c, beginner/04_texts_and_boxes.c, beginner/05_mouse.c, beginner/06_keyboard.c, beginner/07_input_box.c, beginner/08_mouse_keyboard_timer.c, beginner/09_colors.c, beginner/10_library_informations.c, medium/01_keyboard_events.c, medium/02_mouse_events.c, medium/03_input_box_events.c, medium/04_events.c, medium/05_exit.c, medium/06_colors.c, medium/07_time.c, medium/08_full_screen.c, medium/09_keyboard_accents.c, medium/10_mouse_or_keyboard_access.c, medium/11_keys_codes.c, et medium/12_desktop_size.c.
|