Контакты

Для связи с нами можно использовать:
irc://irc.chatnet.ru:#gfs
icq://546460
email://cobalt[@]gfs-team.ru

Все материалы предоставлены только с ознакомительной целью
ГлавнаяСтатьиКодингMFC - урок первый.
© s0 19.03.2007

Минимальная Программа с использованием MFC

Этой статьей я хочу открыть серию статей посвященную програмирования на С++ с использованием MFC.

MFC содержит в себе сотни классов для работы в среде Windows, и очень часто она позволяет программисту сократить время на написание программы.

В этой статье мы напишем минимальную программу на С++ c использованием MFC – которая будет выводить на экран обычное окно Windows.

В своих примерах я буду использовать Visual Studio 6.0

Часть 1 – Создание проэкта

Для создание проэкта – будем использовать встроеный Wizard в Visual Studio. File -> New, выбираем Win32 Application. В поле Project name пишем – step1. В поле Location указываем путь – где у нас будут хранится файлы проэкта. Жмем Ok.

В следующем окне выбираем – An Empty Project и жмем Finish

Все, мы создали пустой проэкт. Тепень нам надо добавить файлы в наш проэкт. В меню выбираем: Project -> Add To project -> Files В появившемся окне пишем имя файла step1.cpp. И жмем ОК.

В окне справа, внизу есть вкладка FileView. Откроем ее. Там у нас хранятся файлы нашего проэкта. Раскроем дерево Source Files. В нем появился файл step1.cpp, который мы только что добавили. Щелкнем на нем два раза. Нам скажут что такого файла не существует, и спросят хотим ли мы создать его. Отвечаем OK(ДА). Все, теперь у нас есть пустой файл step1.cpp.

Чтобы использовать библиотеку MFC – нам надо включить ее поддержку. Открываем Project -> Settings (или просто жмем Alt+F7).

На вкладке General, в выпадающем списке Microsoft Foundation Classes(или коротко MFC). Выбираем Use MFC in Static Library. Жмем ОК. Этим действием мы включили в нашем проэкте возможность использовать библиотеку MFC.

Часть 2 – Пишем первый код

Я приведу сразу весь код, а потом его разберем.

<span style="font-size: 8pt;" lang="EN-US">
// Step1.cpp
// Gfs –Team(www.gfs-team.ru)
#include "afxwin.h" // Подключаем библиотеку MFC
class CNewWnd : public CFrameWnd
{
public:
CNewWnd(); // Это наш конструктор класса
};

CNewWnd::CNewWnd()
{
Create(NULL,"First program using MFC",WS_OVERLAPPEDWINDOW,rectDefault,
NULL,NULL); // Создать окно программы
}

class CMyApp : public CWinApp
{
public:
CMyApp(); //конструктор по умолчанию
virtual BOOL InitInstance();//стандартная инициализация
};

CMyApp::CMyApp() // конструктор главного класса приложения
{}

BOOL CMyApp::InitInstance() // стандартная инициализация
{
m_pMainWnd=new CNewWnd(); // создать класс окна
ASSERT(m_pMainWnd); // проверить его правильность
m_pMainWnd->ShowWindow(SW_SHOW);// Показать окно
m_pMainWnd->UpdateWindow(); // Обновить окно
return TRUE; // Вернуть что все нормально
};

CMyApp theApp; // запуск приложения
</span>

Теперь будем разбиратся во всем этом.

Строка - #include "afxwin.h" включает в наш проэкт файл содержащий описания классов, переменных и функций из набор MFC. Этот файл включает в себя еще множество других файлов.

class CNewWnd : public CFrameWnd

Тут мы создаем класс CNewWnd производный от класса CFrameWnd. Этот класс будет классом нашего окна.

Create(NULL,"First program using MFC",WS_OVERLAPPEDWINDOW,rectDefault,
NULL,NULL);

Функция Сreate создаем окно с задаными параметрами.

Первый парараметр указывает на класс окна, он нам не пока не нужен,и поэтому мы его не указываем. Второй параметр задает заголовок окна Третий параметр задает стиль окна. В нашем случает это - WS_OVERLAPPEDWINDOW – который означает окно имеет заголовок и рамку. Остальные стили вы можете посмотреть тут.

Стили можно комбинировать. Для этого надо указать в качестве разделителя символ “|”. Стиль WS_OVERLAPPEDWINDOW это комбинация стилей - WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX и WS_MAXIMIZEBOX.

virtual BOOL InitInstance()

Эта строка определяет виртуальную функцию InitInstrance, которая отвечает за инициализацию приложения.

Почему виртуальную? Потому что эта функция заглушка реальной функции InitInstance которая не содержит ни какого кода. Поэтому программист сам должен дописать эту функцию.

CMyApp theApp;

Собсно эта строчка и создает окно.

На сегодня все. Запустить наше приложение можно с помощью кнопки F5(отладка). Поэксперементируйте со стилями окна.




© s0 19.03.2007

e-Commerce Partners Network
Ник:

Текст:
P Br B I Qute



Код: обновить
Последние комментарии
18.11.2017 18:42:56 ViktorTap написал:
Zof edifam Weque ...
Пишем guestbook
18.11.2017 14:18:50 EvseyEdich написал:
groomma st plazoni ...
Пишем guestbook
18.11.2017 12:08:52 IrineyVep написал:
Seew pere Inoguic ...
Пишем guestbook
Реклама

Тут должна была быть ваша реклама, но мы потеряли глиняную табличку с ее текстом. SapeId: 665044

Rambler's Top100