Fenêtre du type windows en opengl

Soyez le premier à donner votre avis sur cette source.

Vue 2 510 fois - Téléchargée 485 fois

Description

Pour créé facilement des fenêtre en OpenGl et y ajouter des contrôles comme dans Windows.

C’est bien pratique d’avoir de fenêtre en OpenGL pour la configuration de jeu par exemple.
Avec quelques commande c’est simple…

Source / Exemple :


Vous créé un objet _HUD et (ex : _HUD HUD ;):

//=========================Création=======================

HUD.Inis(char* BMP,bool font);    Pour initialiser le tout 
(ex :HUD.Inis("hui.bmp",true);)

HUD::AddWindows(char *Caption,char *Name,_iPoint2D Pos,_iPoint2D Tail,bool CloseB,bool RedB,float Blend);
Pour ajouter une fenêtre
Caption : Titre
Name : Nom (pour ensuite l’appeler)
Pos : Position
Tail : Taille
CloseB : Si il y a un le bouton fermée
RedB: Si il y a un le bouton réduire
Blend: Transparence (1 non, 0.5 oui)
Exemple :
HUD.AddWindows("Fenetre1","Win1",Point2D(100,100),Point2D(300,200),false,true,1.0f);

HUD::AddObjetToWindows(char *wName,char *Caption,char *Name,_iPoint2D Pos,_iPoint2D Tail,int type,void(*OnClick)());
Ajouter un objet à une fenêtre
WName : Nom de la fenètre
Caption : Nom de l’objet a ajouter
Pos : Position
Tail : Taille
Type : Type (TYPE_LABEL, TYPE_BUTTON, TYPE_TEXT)
OnClick : Fonction appelée quand on clique dessus ou le modifie (peu être NULL)
Exemple :
HUD.AddObjetToWindows("Win1","Boutton 1","Button1",Point2D(50,50),Point2D(60,20),TYPE_BUTTON,ClickButton);

//=========================Mise en oeuvre=============

HUD.Draw();
A mettre dans la boucle d’affichage (Afficher les fenêtre).

HUD.SetHUDSize(width,height);
Pour redimensionner la taille de l’écran (a mettre dans le Reshape)

HUD.MouseMove(x,y);
A appeler quand la souris bouge ;

HUD.MouseClick(button,state,x,y);
A appeler quand on clique;

HUD.Key(key);
A appeler quand appuie sur une touche du clavier;

//=========================Modification=============

HUD::SetObjetCaption(char* Win,char* Objet,char* Caption)
Change le titre d’un control
Exemple :
HUD.SetObjetCaption("Win1","Label1","Click 1");

HUD::SetWindowsCaption(char* Win,char* Caption);
Change le titre d’une fenêtre
Exemple :
HUD. SetWindowsCaption ("Win1”,”Fenetre 1”);

HUD::GetObjetCaption(char* Win,char* Objet,char* Caption)
Regarde le titre d’un control et le met dans Caption
Exemple :
char tText[255];
HUD.GetObjetCaption("Win1","Text1",tText);

HUD::KillWindow(char* Win);
Pour fermer une fenêtre
Exemple :
HUD.KillWindow("Win1");

HUD::ReduceWindow(char* Win);
Pour reduire une fenêtre
Exemple :
HUD. ReduceWindow ("Win1");

HUD:: ExpendWindow (char* Win);
Pour agrandire une fenêtre
Exemple :
HUD. ExpendWindow ("Win1");

HUD::SetWindowPos(char* Win,int x, int y);
Pour changer la position d’une fenêtre
HUD. SetWindowPos(“Win1”,10,10);

_HUD::SetWindowBlend(char* Win,float Blend);
Pour modifier la transparente d’une fenêtre
HUD. SetWindowBlend”Win1”,0.5);

//=============================================

Conclusion :


Voila.
Cette librairie débute, j’essaierai de la mettre a jour souvent.

Vous avez le Zip pour clarifier le tout

Merci a Senos2013 pour d’idée.

Si vous avez des commentaire voir des amélioration n’hésitez pas.

Un peu de pub :-)
Achoum
www.achoum.fr.st

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
21
Date d'inscription
mercredi 28 février 2007
Statut
Membre
Dernière intervention
27 avril 2007

comment le faire marcher sous dev-cpp?
Messages postés
3
Date d'inscription
mercredi 26 avril 2006
Statut
Membre
Dernière intervention
23 janvier 2007

merci bien
Messages postés
755
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
30 janvier 2011

moi j'ai un petit prob : dans la textbox : pas d'espace et quand le texte est trop long : il deborde xD
Messages postés
11
Date d'inscription
mercredi 17 mars 2004
Statut
Membre
Dernière intervention
27 février 2005

salut, je suis vivement intéressé par ton code, mais j'ai pas du tout reussi a le faire marcher. que faut 'il rajouter pour le faire marcher ? quel ".h" ? quel .dll quel .lib ? je te remercie d'avance ciao Guillaume
Messages postés
11
Date d'inscription
mercredi 17 mars 2004
Statut
Membre
Dernière intervention
27 février 2005

salut, je suis vivement intéressé par ton code, mais j'ai pas du tout reussi a le faire marcher. que faut 'il rajouter pour le faire marcher ? quel ".h" ? quel .dll quel .lib ? je te remercie d'avance
ciao Guillaum
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.