::GetSystemMetrics (SM_CYBORDER)
... regresa con 1 y sé que la barra de título es más alto que un píxel:/ancho y alto del borde de la ventana en Win32 - ¿cómo lo obtengo?
También probé:
RECT r; r.left = r.top = 0; r.right = r.bottom = 400; ::AdjustWindowRect (& r, WS_OVERLAPPED, FALSE); _bdW = (uword)(r.right - r.left - 400); _bdH = (uword)(r.bottom - r.top - 400);
Pero frontera w, h volvieron como 0.
en mi manejador WM_SIZE, necesito para asegurarse de que la altura de la ventana cambia en "pasos" para, por ejemplo, una nueva línea de texto podría caber en la ventana sin "espacio adicto parcial de línea" en la parte inferior .
Pero :: MoveWindow necesidades de las dimensiones con el espacio fronterizo añadido en.
alguien debe haber hecho esto antes ... Gracias por cualquier ayuda :)
la documentación para 'dicen AdjustWindowRect', bastante inútil, que no puedes usar 'WS_OVERLAPPED' con él. – JWWalker
@JWWalker: En realidad, eso es bastante útil. Ahora, si también sabe que 'WS_OVERLAPPED' se define como' 0x0', debería ser obvio, por qué, también. – IInspectable
@IInspectable, no, no tengo idea de por qué es relevante que 'WS_OVERLAPPED' sea 0. – JWWalker