1

plop,

Quand on veut lier OpenGL sur le hdc d'une form, on donne souvent à OpenGL les dimentions (largeur et hauteur) de cette dite form pour qu'il calcule tous les paramètres nécessaires pour effectuer le rendu. Problème : ces dimentions prennent en compte la taille des bordures (droite et gauche, mais surtout la barre de menu qui est non négligeable), du coup ça fausse légerement les calculs. Je me souviens être tombé par hasard un jour sur une fonction système qui permettait de rectifier les dimentions selon la taille actuelle des bordures (en fonction de la skin, par exemple), et donc d'avoir la taille exacte de la partie "utilisable" de la fenêtre. Il me semble que cette fonction prenait en paramètre un CRect et le modifiait, mais je ne suis pas sûr, et surtout, pas moyen de remettre la main dessus, ça fait 30 min que je cherche sur msdn/google sad

Si qqun voit de quoi je veux parler, ça m'interesse, mci happy
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

2

En VB il me semble qu'il faut utiliser les propriétés scalewidth et scaleheight. J'avais eu le soucis en voulu aligner des boutons sur un form skinné avec skincrafter

3

je ne sais pas si ca repond a ta question, je viens de voir cet exemple, ou il y a la fonction AdjustWindowRectEx pour prendre en compte la bordure:
// set up the window we're rendering to so that the top left corner is at (0,0)
	// and the bottom right corner is (height,width)
	RECT  windowRect;
	windowRect.left = 0;
	windowRect.right = (LONG) width;
	windowRect.top = 0;
	windowRect.bottom = (LONG) height;

	// change the size of the rect to account for borders, etc. set by the style
	AdjustWindowRectEx(&windowRect, dwStyle, FALSE, dwExStyle);


(source: Lien)

Apres, je suis peut etre a cote de la plaque smile
N/A

4

c'est exactement ça, merci beaucoup happy
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5

top de rien, content d'avoir pu aider smile
N/A

6

on trouve souvent une différenciation "aire window" <=> "aire cliente" <=> "zone de travail" la première représente la fenêtre hors tout, la seconde la zone de travail de la fenêtre (incluant les menus, les toolbars et les éventuelles attachchilded windows) et enfin la dernière représente l'espace de travail, complètement exploitable.
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca