несколько вопросов о разработке MFC? - PullRequest
0 голосов
/ 03 августа 2009

Как вы разрабатываете пользовательский интерфейс в MFC? Вы используете какую-либо бесплатную библиотеку, или обычно разрабатываете с нуля? В программном обеспечении, разработанном на C ++, всегда так много DLL-файлов, для чего они используются?

В чем разница между MFC ActiveX Control и MFC DLL?

Ответы [ 5 ]

3 голосов
/ 03 августа 2009

Visual Studio 2008 расширяет MFC, добавляя «Feature Pack». Это позволяет вам создавать графические интерфейсы в стиле MS Office 2007 (среди прочих) с полосой ленты.

http://msdn.microsoft.com/en-us/library/bb982354.aspx

Я обрезал зубы C ++ с помощью MFC, но я бы порекомендовал вам вместо этого взглянуть на Qt - это гораздо более современный фреймворк плюс вы получаете кросс-платформенную поддержку (Linux, Mac и т. Д.) Для свободно. MFC в значительной степени является мертвой платформой IMHO (Feature Pack был куплен и фактически является урезанной версией библиотеки BCG.)

http://www.bcgsoft.com/

Если вы хотите придерживаться MFC, есть еще один популярный графический интерфейс от CodeJock:

http://www.codejock.com/products/overview.asp?platform=mfc

1 голос
/ 03 августа 2009

Получите хорошую книгу для начала. Если вы не против потратить немного денег, все еще есть контроли третьих сторон . Наконец, codeproject содержит сотни примеров MFC.

1 голос
/ 03 августа 2009

MFC (Microsoft Foundation / Frustration Class) - это старый подход Microsoft по предоставлению платформы для разработчиков на C ++. В те дни это был единственный фреймворк, предлагаемый Microsoft, поэтому подход очень старый (я думаю, что Win95).

MFC - это набор инструментов, состоящий из String, Gui, Controls и т.д ... CString, CWindow, CTreeControl, ...

Кроме того, он содержал компонентную среду (ActiveX) и основанную на Gui структуру компонента Элементы управления ActivX, которые могут включать в себя все части панели инструментов.

Вся функциональность размещена в mfc ??. Dll и другие dll, которые стали частью самой ОС Microsft и содержат множество совместимых компонентов Windows. (Большинство приложений, включая Word Excel, ... реализованы с использованием MFC).

Сегодня я бы не советовал больше использовать MFC. Если вам нужно заботиться о MFC, вы обречены, но я бы посоветовал использовать одну из новых шумих, связанных с MS, или использовать Qt или любой другой набор инструментов на основе графического интерфейса.

Большинство из них более современные, чем MFC.

0 голосов
/ 04 августа 2009

Как вы разрабатываете пользовательский интерфейс в MFC?

Чаще всего графический интерфейс пользователя MFC будет определяться как файл ресурсов Windows, который компилируется с помощью компилятора ресурсов Windows и редактируется с помощью редактора файлов ресурсов MFC, который встроен в Visual Studio.

Но так как файл ресурсов - это просто простой текст , его также можно создавать и редактировать вручную в любом текстовом редакторе.

В чем разница между MFC ActiveX Control и MFC DLL?

MFC - это не что иное, как набор классов библиотеки C ++, предназначенных для использования в существующих технологиях Windows.

Так, например, элемент управления MFC ActiveX представляет собой не что иное, как элемент управления ActiveX Windows , написанный на MFC, а также MFC DLL - это Windows DLL написана на MFC.

Я бы также рекомендовал потратить некоторое время, чтобы немного узнать о базовом слое Win32. На самом деле MFC - это всего лишь очень тонкий слой по сравнению со стандартным Win32, поэтому любое знание Win32 всегда пригодится.

0 голосов
/ 04 августа 2009

Стандартная книга для изучения MFC - это один.

Поскольку вы не перечислите библиотеки DLL, которые вас беспокоят, я не могу их комментировать. Тем не менее, в нативном коде принято разделять часто используемые функции на библиотеки DLL.

Элемент управления ActiveX представляет собой «кусок» функциональности COM (объектная модель компонентов), предназначенный для доступа на нескольких языках. COM не имеет конкретной связи с MFC, за исключением того факта, что MFC может использовать компоненты COM, как и любой другой продукт MS.

DLL-библиотеки MFC бывают двух типов: расширенные и обычные. Обычные библиотеки DLL, как и любые другие библиотеки DLL. DLL расширения более тесно интегрирована с MFC, может использоваться только с приложениями MFC и может экспортировать классы и функции MFC.

...