|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jul 2008
Messaggi: 86
|
[C++ - Win32] GetWindowRect() cosa restituisce?
Ciao a tutti!
Mi trovo davanti a un quesito da novellino ![]() La funzione GetWindowRect() restituisce il rettangolo esterno o interno (quello disegnabile per intenderci) della finestra?? E se restituisce quello esterno come faccio a ottenere quello interno? Io vorrei ottenere la finestra principale contenente 4 child windows uguali disposte 2 x 2 con 10px di distanza tra loro e dal bordo interno della finestra. Quindi avevo pensato a questo: Codice:
RECT mainWndRect;
GetWindowRect(engine->GetMainHWnd(), &mainWndRect);
int childWndWidth = (mainWndRect.right - mainWndRect.left - 30) / 2;
int childWndHeight = (mainWndRect.bottom - mainWndRect.top - 30) / 2;
HWND childHWnd1 = CreateWindowEx(WS_EX_CLIENTEDGE,
TEXT("static"),
NULL,
WS_CHILD | SS_BLACKRECT | WS_VISIBLE,
10,
10,
childWndWidth,
childWndHeight,
engine->GetMainHWnd(),
NULL,
hInst,
NULL);
HWND childHWnd2 = CreateWindowEx(WS_EX_CLIENTEDGE,
TEXT("static"),
NULL,
WS_CHILD | SS_BLACKRECT | WS_VISIBLE,
20 + childWndWidth,
10,
childWndWidth,
childWndHeight,
engine->GetMainHWnd(),
NULL,
hInst,
NULL);
HWND childHWnd3 = CreateWindowEx(WS_EX_CLIENTEDGE,
TEXT("static"),
NULL,
WS_CHILD | SS_BLACKRECT | WS_VISIBLE,
10,
20 + childWndHeight,
childWndWidth,
childWndHeight,
engine->GetMainHWnd(),
NULL,
hInst,
NULL);
HWND childHWnd4 = CreateWindowEx(WS_EX_CLIENTEDGE,
TEXT("static"),
NULL,
WS_CHILD | SS_BLACKRECT | WS_VISIBLE,
20 + childWndWidth,
20 + childWndHeight,
childWndWidth,
childWndHeight,
engine->GetMainHWnd(),
NULL,
hInst,
NULL);
__________________
XFX 780i - Zotac GTX470 + XFX 8800GTS 512Mb - 2x Patriot Viper 2Gb SLI-Ready - Q9300 @ 3.2GHz - Triton 88 - SuperFlower 700W I computer sono stupidi, se vuoi convivere con loro impara a dirgli cosa fare. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
Quote:
l'area "disegnabile", come la chiami tu, si chiama "client area", mentre tutto il resto si chiama "non-client area" ed include la barra di spostamento, i bordi, il menu di sistema, ecc. |
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Jul 2008
Messaggi: 86
|
Grazie mille!! Adesso funziona!
__________________
XFX 780i - Zotac GTX470 + XFX 8800GTS 512Mb - 2x Patriot Viper 2Gb SLI-Ready - Q9300 @ 3.2GHz - Triton 88 - SuperFlower 700W I computer sono stupidi, se vuoi convivere con loro impara a dirgli cosa fare. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:47.





















