Форум программистов, компьютерный форум CyberForum.ru

SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.65
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
31.05.2011, 19:07     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #1
Добрый день)
Разворот окна на весь экран осуществляется следующим кодом (Hwnd - дескриптор окна):

C++
1
SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
вот прочитал в инете что функция SendMessage разворачивает окно... решил попробовать.... а программа не компилируется (
в какой библиотеке заложена эта функция?

Добавлено через 2 минуты
компилятор Turbo C++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2011, 19:07     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
Посмотрите здесь:

C++ програмно нажать TAB через SendMessage
C++ HWND в ActiveX
SendMessage в обход Subclassing'а C++
C++ HWND
Трудности с SendMessage C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
31.05.2011, 19:13     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #2
windows.h
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
31.05.2011, 19:15     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #3
В консольном приложении это не сработает.
А для оконного есть
C++
1
ShowWindow(Handle, SW_MAXIMIZE);
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
31.05.2011, 19:17  [ТС]     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #4
Цитата Сообщение от m1Rr0r Посмотреть сообщение
windows.h
я пробовал такой библиотеки нет кричит

Добавлено через 2 минуты
мне для консольного... еще тут в Си можно окна создавать отдельно??
и вот например если создавать с помошью
window(int *, int *, int *, int *);
как переходить между ними...?
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
31.05.2011, 19:23     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #5
mimicria,
это почему не сработает ?

Добавлено через 28 секунд
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <windows.h>
HWND GetConsoleHwnd(void);
int main(int argc, char* argv[])
{
    SendMessageW(GetConsoleHwnd(),WM_SYSCOMMAND, SC_MAXIMIZE, 0);
    return 0;
}
HWND GetConsoleHwnd(void)
{
#define MY_BUFSIZE 1024 // Размер буфера для заголовка консольного окна.
HWND hwndFound; // Это то, что будет возвращено.
char pszNewWindowTitle[MY_BUFSIZE]; // Уникальный заголовок окна.
char pszOldWindowTitle[MY_BUFSIZE]; // Изначальный заголовок окна.
 
// Выбираем текущий заголовок окна.
 
GetConsoleTitle(pszOldWindowTitle, MY_BUFSIZE);
 
// Формируем "уникальный" NewWindowTitle.
 
wsprintf(pszNewWindowTitle,"%d/%d",
GetTickCount(),
GetCurrentProcessId());
 
// Изменяем текущий заголовок окна.
SetConsoleTitle(pszNewWindowTitle);
 
// даём время заголовку, чтобы измениться.
 
Sleep(40);
 
// Ищем NewWindowTitle.
 
hwndFound=FindWindow(NULL, pszNewWindowTitle);
 
// Восстанавливаем изначальный заголовок окна.
 
SetConsoleTitle(pszOldWindowTitle);
 
return(hwndFound);
}
при запуске разворачивает окно

Добавлено через 2 минуты
morphling,
попробуй
#include "windows.h"
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
31.05.2011, 19:25     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #6
Цитата Сообщение от m1Rr0r Посмотреть сообщение
mimicria,
это почему не сработает ?
Я имел ввиду, что окно не раскроется на весь экран.
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
31.05.2011, 19:27     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #7
mimicria,
прямь уж на весь нет )
но на максимально возможное исходя из установок размера окна, да
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
31.05.2011, 19:30  [ТС]     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #8
m1Rr0r, тоже не находит...я ее даже из dev cpp взял и в include кинул тока не работает чет она
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
31.05.2011, 19:31     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #9
странно на VS работает...
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
31.05.2011, 19:33     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #10
windows.h подключает кучу других win.. хедеров - поэтому и не работает
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
31.05.2011, 19:34  [ТС]     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #11
m1Rr0r, скинешь архивом сишник? kuba4i.ru@yandex.ru
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
31.05.2011, 19:39     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #12
Цитата Сообщение от morphling Посмотреть сообщение
m1Rr0r, скинешь архивом сишник
А смысл, если у него нет нужных хедеров? Исходник-то явно ни при чём
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2011, 19:46     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
Еще ссылки по теме:

C++ ошибка SendMessage
C++ SendMessage(hListBox, LB_GETCARETINDEX, 0, 0L). Разобрать строку кода
Преобразование hwnd в int C++

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

Или воспользуйтесь поиском по форуму:
morphling
 Аватар для morphling
-9 / 19 / 1
Регистрация: 26.06.2010
Сообщений: 181
31.05.2011, 19:46  [ТС]     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); #13
Я имел виду ту на чем он компилировал ее.....
Yandex
Объявления
31.05.2011, 19:46     SendMessage(Hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
Ответ Создать тему
Опции темы

Текущее время: 20:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru