mam kod w którym chcę aby to co rysuje, prostakąt, elipsa, itp. było wyśrodkowane w oknie, niezależnie od rozmiaru okna, tzn. że jak coś rysuje to to jest dokładnie na środku, ta figura będzie zmieniac kształt, ktoś ma jakiś pomysł? mam x,y: zmienne odpowiadajace za początek rysowania i X,Y, zmienne ktore koncza rysowanie.
0
0
((x2-x1)/2)-(xFigury/2) - miejsce z ktorego powinienes zaczac rysowac X
((y2-y1)/2)-(yFigury/2) - miejsce z ktorego powinienes zaczac rysowac Y
:)
0
StartX = ((clientRect.right-clientRect.left)/2)-(StartX/2);
StartY = ((clientRect.bottom-clientRect.top)/2)-(StartY/2);
o to chodzi?
0
wojti911 napisał(a)
StartX = ((clientRect.right-clientRect.left)/2)-(StartX/2);
StartY = ((clientRect.bottom-clientRect.top)/2)-(StartY/2);
o to chodzi?
Tak.
0
Dodam jeszcze abyś oznaczył klasę okno w którym rysujesz flagami CS_HREDRAW i CS_VREDRAW (przy RegisterClassEx). Dzięki temu będziesz dostawał komunikat WM_PAINT jeśli użytkownik chwyci za róg okna i będzie zmieniał jego rozmiar. Pozwoli to na przerysowanie figury w nowym położeniu za każdym razem gdy rozmiar okna zmieni się.