Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2013, 23:12   #1
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию окна WIN API

Помогите разобратся с домашкой пожалуста.
Задание :
Написать приложение, позволяющее вывести на экран краткое резюме с помощю последовательности окон сообщения
(количество окон приложения не меньше трех). На заголовке последнего окна сообщения должно отобразиться
среднее число символов на странице.
Вот что у меня получилось а как их связать вместе незнаю подскажите плиз.

WINAPI
Код:

Код:
#include <Windows.h>
#include <tchar.h>
//прототип оконной процедуры
LRESULT CALLBACK WindowProc(HWND,UINT,WPARAM,LPARAM);

TCHAR szClassWindow[]=TEXT("Каркасное приложение");

INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,LPSTR lpszCmdLine, 
	int nCmdShow)
{
	
	HWND hWnd;
	MSG lpMsg;
	WNDCLASSEX wcl;
	//1.Определение класса окна
	wcl.cbSize=sizeof(wcl);//размер структуры WNDCLASSEX
	//перерисовать все окно, если изменен размер по горизонтали или по вертикали
	wcl.style=CS_HREDRAW|CS_VREDRAW;//стиль класса окна
	wcl.lpfnWndProc=WindowProc;
	wcl.cbClsExtra=0;
	wcl.cbWndExtra=0;
	wcl.hInstance=hInst;//дескриптор данного приложения
	//загрузка стандартной иконки
	wcl.hIcon=LoadIcon(NULL, IDI_APPLICATION);
	//загрузка стандартного курсора
	wcl.hCursor=LoadCursor(NULL,IDC_HAND);
	//заполнение окна белым цветом
	wcl.hbrBackground=(HBRUSH) GetStockObject(BLACK_BRUSH);
	wcl.lpszMenuName=NULL;// приложение не содержит меню
	wcl.lpszClassName=szClassWindow;//имя класса окна
	wcl.hIconSm=NULL;//отсутствие маленькой иконки
	//Регистрация имя окна
    if(!RegisterClassEx(&wcl))
		return 0;//при неудачной регистрации выход
	//Оздание окна
    //создается окно и переменной hWnd присваивается дескриптор окна
    hWnd=CreateWindowEx(
		0,
		szClassWindow,//имя класса
		TEXT("Каркас приложение Windows"),//
		WS_OVERLAPPEDWINDOW,//
		155,
		155,
		200,
		200,
		NULL,
		NULL,
		hInst,
		NULL);
	//
	ShowWindow(hWnd,nCmdShow);
	UpdateWindow(hWnd);
	while(GetMessage(&lpMsg, NULL, 0, 0))
	{
	TranslateMessage(&lpMsg);
	DispatchMessage(&lpMsg);
	}
	MessageBox(0,TEXT("реализация програмы"),TEXT("ПОПА"),MB_OKCANCEL|MB_DEFBUTTON1|MB_DEFBUTTON2);
	MessageBox(0,TEXT("LOVE"),TEXT("IS"),MB_YESNO|MB_ICONINFORMATION);
	MessageBox(0,TEXT("Gopa"),TEXT("OPA"),MB_OKCANCEL|MB_DEFBUTTON1);
	return lpMsg.wParam;
}

LRESULT CALLBACK WindowProc(HWND hWnd,UINT uMessage, WPARAM wParam,LPARAM lParam)
{
	switch(uMessage)
	{
	case WM_DESTROY:
		PostQuitMessage(0);
		break;
	default:
		return DefWindowProc(hWnd,uMessage,wParam,lParam);
	}
	return 0;
}
mixon-21 вне форума Ответить с цитированием
Старый 24.10.2013, 23:50   #2
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

как функции messagebox связать с родительским окном
mixon-21 вне форума Ответить с цитированием
Старый 25.10.2013, 06:45   #3
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
По умолчанию

Первым параметром MessageBox передавайте hWnd родительского окна. И вызывайте при получении сообщения WM_CREATE, скажем, в оконной процедуре.
vadimych вне форума Ответить с цитированием
Старый 25.10.2013, 09:42   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Уберите цикл сообщениий, а то до MessageBox дойдете только при закрытии приложения.
Если вам надо открывать 3 окна то MessageBox вам не поможет.
waleri вне форума Ответить с цитированием
Старый 25.10.2013, 11:55   #5
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Цитата:
Сообщение от vadimych Посмотреть сообщение
Первым параметром MessageBox передавайте hWnd родительского окна. И вызывайте при получении сообщения WM_CREATE, скажем, в оконной процедуре.
покажите на примере плиз

и как реализовать.
Цитата:
На заголовке последнего окна сообщения должно отобразиться
среднее число символов на странице.

Последний раз редактировалось mixon-21; 25.10.2013 в 12:17.
mixon-21 вне форума Ответить с цитированием
Старый 28.10.2013, 22:17   #6
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

помогите пожалуста:confu sed:
mixon-21 вне форума Ответить с цитированием
Старый 29.10.2013, 10:45   #7
Vladiger
Пользователь
 
Регистрация: 31.08.2013
Сообщений: 93
По умолчанию

Цитата:
Сообщение от mixon-21 Посмотреть сообщение
помогите пожалуста:confu sed:
Мне кажется Вы так не дождетесь помощи. Какой вопрос - таков и ответ.
Лично я из Вашего вопроса в первом сообщении, вообще ничего не понял.

Цитата:
краткое резюме с помощю последовательности окон сообщения
При чем тут "Окна WinAPI"? Вам нужно несколько окон? CreateDialog() в помощь.

Цитата:
На заголовке последнего окна сообщения должно отобразиться среднее число символов на странице
Каких ещё символов? На какой странице?

Я понимаю что за всем этим кроется какой то смысл, но не понимаю какой именно. Вы бы описали более подробно цель Ваших терзаний, резюме на 3-х страницах или чего?
Vladiger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Win Api] Изменение цвета окна temik612 Общие вопросы C/C++ 2 15.04.2013 16:26
Создание дочернего окна на Win Api bulldog5293 Общие вопросы Delphi 6 26.09.2010 02:12
Win API ( CИ) ПроГрам Помощь студентам 0 29.04.2010 21:43
Win Api alexov Общие вопросы C/C++ 4 29.01.2009 13:33