Народ!
Расскажите мне такому как окно консоли развернуть на весь экран (не в смысле alt+enter а maximize, средняя кномпочка в правом верхнем углу окна).
Были испробованы пути (размер буффера уже увеличен до полноэкранного размера):
SetConsoleWindowInfo(handle1, false, Nc);
и
SendMessage(hwnd1, WM_SIZE, SIZE_MAXIMIZED , 0);
ничего не помогло

все как было масенько, так и осталось...
Пробуется в: MSVC7 под W2K
Posted via RSDN NNTP Server 1.7 beta
Здравствуйте, size_t, Вы писали:
_>Народ!
_>Расскажите мне такому как окно консоли развернуть на весь экран (не в смысле alt+enter а maximize, средняя кномпочка в правом верхнем углу окна).
_>Были испробованы пути (размер буффера уже увеличен до полноэкранного размера):
_>SetConsoleWindowInfo(handle1, false, Nc);
_>и
_>SendMessage(hwnd1, WM_SIZE, SIZE_MAXIMIZED , 0);
_>ничего не помогло
все как было масенько, так и осталось...
_>Пробуется в: MSVC7 под W2K
SetConsoleScreenBufferSize
msdn: The specified width and height cannot be less than the width and height of the console screen buffer's window.
то есть фишка по-видимому в следующем: ты пытаешься увеличить размер окна не меняя размер буфера, получается, что размер окна больше размера буфера, но (см. цитату выше) разmер буфера не можер быть меньше размера окна, оттого ничего и не происходит. сначала увеличь размер будера посредством SetConsoleScreenBufferSize, а уже потом SetConsoleWindowInfo.
_>Народ!
_>Расскажите мне такому как окно консоли развернуть на весь экран (не в смысле alt+enter а maximize, средняя кномпочка в правом верхнем углу окна).
H>msdn: The specified width and height cannot be less than the width and height of the console screen buffer's window.
H>SetConsoleScreenBufferSize
H>msdn: The specified width and height cannot be less than the width and height of the console screen buffer's window.
H>то есть фишка по-видимому в следующем: ты пытаешься увеличить размер окна не меняя размер буфера, получается, что размер окна больше размера буфера, но (см. цитату выше) разmер буфера не можер быть меньше размера окна, оттого ничего и не происходит. сначала увеличь размер будера посредством SetConsoleScreenBufferSize, а уже потом SetConsoleWindowInfo.
Спась. Разобрался! Надо было делать так:
COORD crd = GetLargestConsoleWindowSize( Hnd );
if( !crd.X && !crd.Y ) return;
crd.X-=2;
crd.Y-=2;
SMALL_RECT sr = {0,0,crd.X-1, crd.Y-1};
SetConsoleScreenBufferSize(Hnd,crd);
SetConsoleWindowInfo(Hnd,true,&sr);