Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
#1

Развертывание окна - C++

26.11.2012, 16:11. Просмотров 928. Ответов 14
Метки нет (Все метки)

Помогите обычное консольное окно развернуть. Я сделал его нестандартным и оно просто не помещается на экране, мне нужно его засунуть в верхний угол... как????? Мне нужно что нибудь самое простое, просто развернуть
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2012, 16:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Развертывание окна (C++):

Развертывание консольного окна - C++
Как при включении программы развернуть консольное окно??? Если я это делаю вручную оно прилепает к правому верхнему углу. Вот мне надо...

развертывание параметров через лямбду - C++
где-то видел подобноеtemplate<class ...A> void println(A...arg){ int showup{ (std::cout<<arg,0)... }; std::cout <<...

Не вижу окна с кодом (нет окна редактирования): найти причины странного поведения программы - C++
Создаю проект, а кроме синего экрана ничего больше нет, не знаю, что делать. Прочла здесь же про образователь решений(типа должен быть...

Почему авторы диалоговых окон стараются сделать свои окна максимально похожими на стандартные окна? - C++
Начал рассматривать множество программ на С++ и заметил, что программисты стараются сделать почти все диалоговые окна максимально похожими...

поиск Handle окна, зная ControlId окна - C++
вопрос по сабжу

Подскажите функцию для получения HWND текущего окна, или по названию окна (для экспорта в VFP6) - C++
пусто

14
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
26.11.2012, 16:41 #2
C++
1
ShowWindow(hWnd,SW_MAXIMIZE);
Не то? Просто не понял, что Вам конкретно нужно
0
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
26.11.2012, 16:55 #3
http://msdn.microsoft.com/ru-ru/libr...=vs.85%29.aspx
там вроде бы функция SetConsoleDisplayMode()
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
26.11.2012, 16:56 #4
так развернет на весь экран
C++
1
2
3
    COORD coord;
    coord=GetLargestConsoleWindowSize(GetStdHandle(STD_OUTPUT_HANDLE));
    SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE),coord);
0
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
26.11.2012, 17:28 #5
Цитата Сообщение от Croessmah Посмотреть сообщение
так развернет на весь экран
C++
1
2
3
    COORD coord;
    coord=GetLargestConsoleWindowSize(GetStdHandle(STD_OUTPUT_HANDLE));
    SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE),coord);
это немного не то - получается размер только для буффера под отображение символов, а окно останется того-же размера.
нашел как изменить, для этого используется функция SetConsoleScreenBufferInfoEx();
там заполняется структура CONSOLE_SCREEN_BUFFER_INFOEX, и в ней указываются отдельно размеры, для всех частей консольного окна
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
26.11.2012, 17:32 #6
Цитата Сообщение от ps10n1ck Посмотреть сообщение
это немного не то - получается размер только для буффера под отображение символов, а окно останется того-же размера.
забыл дописать
C++
1
ShowWindow(hWnd,SW_MAXIMIZE);
Цитата Сообщение от ps10n1ck Посмотреть сообщение
SetConsoleScreenBufferInfoEx();
тоже вариант.
0
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
26.11.2012, 19:23  [ТС] #7
Цитата Сообщение от Croessmah Посмотреть сообщение
C++
1
ShowWindow(hWnd,SW_MAXIMIZE);
Не то? Просто не понял, что Вам конкретно нужно

Мне нужно прочто чтобы окно прилепилось к верхнему левому углу....

Добавлено через 44 секунды
Цитата Сообщение от Croessmah Посмотреть сообщение
ShowWindow(hWnd,SW_MAXIMIZE);
Когда так пишу возникает ошибка

C++
1
1>MainFile.cpp(33): error C2065: hWnd: необъявленный идентификатор
Добавлено через 3 минуты
Я как то раньше писал со строкой ShowWindow но как подробно не помню ((
0
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
26.11.2012, 19:51 #8
HWND hWnd = GetConsoleWindow();
SetWindowPos(........);
ShowWindow(hWnd,SW_MAXIMIZE);

Добавлено через 11 минут
C++
1
2
3
HWND hWnd = GetConsoleWindow();
SetWindowPos(hWnd, 0, 0, 0, 800, 600, SWP_SHOWWINDOW);
ShowWindow(hWnd,SW_SHOWNORMAL);
0
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
26.11.2012, 19:58  [ТС] #9
Цитата Сообщение от ps10n1ck Посмотреть сообщение
HWND hWnd = GetConsoleWindow();
SetWindowPos(........);
ShowWindow(hWnd,SW_MAXIMIZE);

Добавлено через 11 минут
C++
1
2
3
HWND hWnd = GetConsoleWindow();
SetWindowPos(hWnd, 0, 0, 0, 800, 600, SWP_SHOWWINDOW);
ShowWindow(hWnd,SW_SHOWNORMAL);

Ну я вообще ничего не могу понять... Все написал а возникает ошибка

C++
1
2
3
4
5
1>MainFile.obj : error LNK2028: ссылка на неразрешенную лексему (0A000418) "extern "C" int __stdcall SetWindowPos(struct HWND__ *,struct HWND__ *,int,int,int,int,unsigned int)" (?SetWindowPos@@$$J228YGHPAUHWND__@@0HHHHI@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>MainFile.obj : error LNK2028: ссылка на неразрешенную лексему (0A000423) "extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>MainFile.obj : error LNK2019: ссылка на неразрешенный внешний символ "extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>MainFile.obj : error LNK2019: ссылка на неразрешенный внешний символ "extern "C" int __stdcall SetWindowPos(struct HWND__ *,struct HWND__ *,int,int,int,int,unsigned int)" (?SetWindowPos@@$$J228YGHPAUHWND__@@0HHHHI@Z) в функции "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>C:\Users\Егор\Documents\DOCUMENTS\VisualStudio\Projects\Prog+\Debug\Prog+.exe : fatal error LNK1120: 4 неразрешенных внешних элементов
0
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
26.11.2012, 20:12 #10
библиотека User32.lib подключена?

Добавлено через 8 минут
Project Properties / Linker / Input / Additional Dependencies
1
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
27.11.2012, 00:12  [ТС] #11
Цитата Сообщение от ps10n1ck Посмотреть сообщение
библиотека User32.lib подключена?

Добавлено через 8 минут
Project Properties / Linker / Input / Additional Dependencies
Сейчас попробую

Добавлено через 3 часа 49 минут
Цитата Сообщение от ps10n1ck Посмотреть сообщение
библиотека User32.lib подключена?

Добавлено через 8 минут
Project Properties / Linker / Input / Additional Dependencies

А можно на русском, у меня русская версия
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
27.11.2012, 05:05 #12
Цитата Сообщение от Egor138 Посмотреть сообщение
А можно на русском, у меня русская версия
Свойства проекта->Линковщик(Комповщик)->Ввод->Дополнительные зависимости.
Но как мне кажется, это Вы что-то не правильно делаете, ибо user32.lib по умолчанию уже подключена.
0
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
27.11.2012, 15:03  [ТС] #13
Цитата Сообщение от Croessmah Посмотреть сообщение
Но как мне кажется, это Вы что-то не правильно делаете
Ну может мне как нибудь попробовать по другому ???

Вот нашел вот такой код

C++
1
2
3
4
5
6
7
   HWND hwndConsole = NULL;
   hwndConsole = FindWindow(NULL, "Test.exe");
   if(NULL != hwndConsole)
   {
      SetForegroundWindow(hwndConsole);
      ShowWindow(hwndConsole, SW_MAXIMIZE);
   }
Добавлено через 1 минуту
Ну не везет мне))) И тут ошибки

C++
1
2
1>.\MainFile.cpp(32) : error C2664: FindWindowW: невозможно преобразовать параметр 2 из 'const char [9]' в 'LPCWSTR'
1>        Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
Что это вообще за тип такой LPCWSTR
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
27.11.2012, 15:26 #14
LP -Long Pointer, C - const, указатель на константную WSTR строку "широких" символов
0
Egor138
32 / 13 / 2
Регистрация: 10.08.2012
Сообщений: 619
Записей в блоге: 2
27.11.2012, 15:42  [ТС] #15
Все я добился разворачивания окна!!!))

Вот код


C++
1
2
3
4
5
6
7
#include <windows.h>
#pragma comment (lib, "user32.lib")
 
int main() 
{
    ShowWindow(GetConsoleWindow(), SW_MAXIMIZE);
}
0
27.11.2012, 15:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2012, 15:42
Привет! Вот еще темы с ответами:

Как запретить сворачивание окна приложения при нажатии кнопки "свернуть все окна" - C++
Что происходит при нажатии этой кнопки в плане сообщениий, и как их перехватить и игнорировать,что бы окно не сворачивалось? Чем это...

Развертывание окна - Delphi
здравствуйте уважаемые программисты . На форме имеются несколько компонентов :Button, Image, Label, WebBrowser. как сделать сто бы при...

Запретить развертывание окна - C++ WinAPI
Как убрать кнопку развернуть в правом верхнем углу? может стиль какой есть? ...

Событие на развертывание окна - C#
Привет, нужно сделать событие когда программа разворачивается из панели задач... копался в событиях но ничего не нашел( Оч. буду...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru