Рис. 4
ClassWizard..
Майстер ClassWizard полегшить виконання таких завдань, що повторюються, як створення нових класів і обробників повідомлень, перевизначення віртуальних функцій MFC і збір даних від елементів управління діалогових вікон. Одне дуже важливе зауваження: ClassWizardработает лише із застосуваннями, що використовують бібліотеку MFC, що відрізняє його від таких засобів, як ClassViewи WizardBar, що працюють з MFC, ATL і вашими власними похідними класами. До того ж ClassView не розпізнає класи, якщо вони не зареєстровані у файлі бази даних ClassView (файл з розширенням CLW). За допомогою майстра ClassWizardможно виконувати наступні дії:
• додавати до нового класу методи і властивості;
• породжувати нові класи від базових класів MFC;
• створювати нові обробники повідомлень;
• оголошувати змінні-члени, які автоматично ініціалізували, збирають і
перевіряють дані, що вводяться в діалогових вікнах або формах;
• видаляти існуючі обробники повідомлень;
• визначати, які повідомлення вже пов'язані з обробниками, і переглядати їх код;
• працювати з існуючими класами і бібліотеками типів
Resource Symbols... і Resource Includes..
Ви дуже швидко переконаєтеся в тому, що у міру збільшення і ускладнення кода вашого застосування нестримно зростає і число задіяних в проекті ресурсів, все важче стає відстежувати постійно зростаюче число ідентифікаторів ресурсів, розкиданих по багаточисельних файлах проекту. Команди ResourceSymbols... і ResourceIncludes... істотно полегшать процес контролю за ресурсами. Перерахуємо операції, які можна виконати з їх допомогою:
• зміна імен і значень символічних ідентифікаторів, які в даний момент не використовуються;
• визначення нових ідентифікаторів;
• видалення непотрібних ідентифікаторів;
• швидке завантаження відповідних редактор ресурсів;
• перегляд описів існуючих ідентифікаторів і визначення ресурсів, пов'язаних з кожним ідентифікатором.
FullScreen
Подібно до більшості програмістів, ви в процесі програмування напевно хочете бачити на екрані якомога більше коду. У цьому вам допоможе команда FullScreen, при виборі якої вікно редагування буде розгорнуто на весь екран.
Workspace
При виборі команди Workspace на екрані з'являється панель Workspace(зазвичай в лівій частині робочого вікна), за допомогою якої можна звертатися до поточних класів, файлів, ресурсів. Ви можете переходити від списку до списку, клацаючи на вкладках, розташованих в нижній частині панелі.
Output
По команді Output відкривається вікно Output, в якому відображується хід виконання таких процесів, як компіляція і компоновка програми. У це вікно виводяться також всі застережливі повідомлення і повідомлення про помилки, що генеруються компілятором і компонувальником.
Debug Windows
У підменю Debug Windows містяться команди виклику різних вікон відладчика, включаючи Watch, Call Stack, Memory, Variables, Registers і Disassembly.
Refresh
Команда Refresh призначена для оновлення вигляду поточного вікна - аналогічно тому, як за допомогою клавіші [F5] ми оновлюємо зовнішній вигляд вікна програми Explorer (Провідник) в Windows.
Properties
При виборі цієї команди виводяться дані про поточний файл, такі як дата створення, розмір, тип файлу, особливості редагування і багато що інше, що залежить від типа файлу.
Меню Insert
Меню Insert (рис. 5) містить команди, що дозволяють вставляти в проект нові файли, ресурси, об'єкти і т.д
Рис 5
NewClass..
При виборі даної команди відкривається діалогове вікно NewClass, в якому можна задати ім'я нового класу (таким може бути клас бібліотек MFC і ATL або клас загального призначення) і вказати його базовий клас. В результаті створюється файл заголовків і файл реалізації нового класу.
Resource..
Ця команда дозволяє додати в проект нові ресурси, включаючи гарячі клавіші, растрові зображення, покажчики миші, діалогові вікна, значки, HTML-файли, меню, таблицю рядків, панелі інструментів і ідентифікатор версії.
ResourceCopy..
VisualC++ дає можливість створити копію ресурсу при зміні мови його опису. Мова ресурсу вибирається в списку Language вікна InsertResourceCopy. У полі Condition можна задати символічний ідентифікатор, наявність якого в даній конфігурації проекту є умовою для підключення ресурсу. Мова ресурсу відображується у вікні Workspace після імені ресурсу.
File As Text..
Дана команда застосовується для додавання в проект тексту вказаного файлу. Перед вибором команди необхідно відкрити вікно редагування і встановити курсор у місці введення тексту.
New ATL Object..
Дана команда дозволяє додати в існуючий проект ATL-класс. ATL-объекты є шаблонними класами C++, які реалізують основні засоби СОМ, включаючи інтерфейси IUnknown, IClassFactory, IClassFactory2 і IDispatch, підтримку двонаправлених інтерфейсів, що відключаються, інтерфейсів перерахування (lEnumXXXX), точок підключення, елементів управління ACTIVEX і багато що інше.
Меню Project
Команди меню Project (рис. 6) дозволяють управляти відкритими проектами.
Рис 6
SetActiveProject
У даному підменю відображується список завантажених проектів, з яких можна обрати активний.
AddtoProject
Це підменю складається з команд, призначених для додавання в проект нових компонентів. Файл, що додається, поміщається у всі конфігурації проекту.
Dependencies
Якщо ваш великий проект розбитий на декілька підпроектів, то для відображення ієрархічних зв'язків між ними слід використовувати команду Dependencies.
Settings..
При виборі команди Settings... відкривається досить складне діалогове вікно, що дозволяє встановлювати практично всі параметри конфігурації проекту, включаючи опції компілятора і компонувальника .
ExportMakefile..
За допомогою цієї команди можна зберегти у файлі всю інформацію, необхідну для побудови проекту. Файл, створений із застосуванням команди ExportMakefile..., зберігає всі установки, які ви зробили в середовищі VisualC++.
Дана команда додає існуючий проект у ваш робочий простір. Сказане може звучати декілька дивно, якщо ви нечітко представляєте, яка різниця між проектом і робочим простором. Останнє є областю, що містить сукупність проектів і їх конфігурацій. Проектом називається група файлів, що дозволяють побудувати програму або вихідний двійковий файл (файли). Робочий простір може містити декілька проектів, причому ці проекти часто відносяться до різних типів.
Меню Build
У меню Build (рис.7) містяться всілякі команди, призначені для генерації коди застосування, відладки і запуску створеної вами програми.
Рис
7
Compile
Вибір цієї команди наводить до компіляції вмісту поточного вікна.
Build
Зазвичай проекти, написані на C/C++, включають багато файлів. Оскільки почергова компіляція всіх файлів займе багато часу, корисною виявиться команда Build, яка автоматично проаналізує файли проекту, компілюючи лише ті з них, які були створені пізнішим, ніж виконуваний файл проекту.
Перш ніж вибрати команду Build, вам слід прийняти рішення, чи слід в кінцевий файл включати налагоджувальну інформацію (конфігурація Debug) або ж виключити ці дані з файлу (конфігурація Release). Аби встановити той або інший режим, необхідно в меню.
Build обрати команду Set Active Configuration.... Якщо ви закінчили роботу над програмою і переконалися в її працездатності, налагоджувальну інформацію з вихідного файлу доцільно виключити — в такому разі він стане значно компактнее.
Повідомлення про помилки, що виявляються в процесі компіляції і компоновки з'являтимуться у вікні Output.
RebuildAll
Відмінність між командами Build и RebuildAll полягає в тому, що остання не звертає уваги на дату і час створення файлів і компілює всі файли проекту.
Якщо при виконанні команди RebuildAll будуть виявлені синтаксичні помилки, як фатальні, так і потенційно небезпечні, то попередження і повідомлення про них з'являться у вікні Output.
BatchBuild..
Ця команда аналогічна команді Build, але з її допомогою можна обробити відразу декілька конфігурацій одного проекту.
Clean
За допомогою команди Clean зі всіх конфігурацій поточного проекту віддаляються проміжні файли. Побудувати файли заново можна шляхом вибору команди Build.
StartDebug
Дане підміну містить команди, призначені для виконання програми в режимі відладки: до курсора або до заданої точки останову.
Debugger Remote Connection..
Завдяки наявності цієї команди можна здійснювати відладку проекту, що виконується на видаленому комп'ютері.
Execute
Якщо компіляція прошла успішно, виберіть команду Execute, і побудована програма буде запущена.
Set Active Configuration..
Якщо ви працюєте над великим проектом, що складається з декількох підпроектів, кожен з яких має власний виконуваний файл, то перед вибором команди Build або RebuildAll вам слід вказати, з яким саме виконуваним файлом ви збираєтеся працювати в даний момент. Для виконання цього завдання скористайтеся командою SetActiveConfiguration..., яка дозволяє вибрати необхідну конфігурацію проекту.
Configurations..
Команда Configurations... дозволяє додавати або видаляти конфігурації поточного проекту.
Наприклад, якщо ви почали роботу лише з конфігурацією Debug (налагоджувальна версія програми), то тепер можете додати конфігурацію Release (фінальна версія програми).
Profile..
Дана команда представлена лише в професійній і корпоративній версіях VisualC++. Але аби нею можна було скористатися, необхідно при створенні проекту встановити опцію, задаючу підключення профілювальника (опція Enable profiling категорії General вкладки Link діалогового вікна Project Settings). Профілювальник використовується для аналізу роботи програми під час її виконання. В процесі профілізації у вікні Output відображується інформація, на підставі якої ви можете з'ясувати, які частини вашої програмної коди працюють ефективно, а які не виконуються або вимагають великих тимчасових витрат.
Меню Tools
Меню Tools (рис.8) містить команди виклику допоміжних утиліт, програмування макросів і налаштування середовища VisualC++.
Рис.8
SourceBrowser..
Цією командою можна скористатися при необхідності проглянути інформацію про вихідні файли. Ви можете доручити компілятору створювати по допоміжному файлу SBR- для кожного об'єктного (OBJ) файлу, який зустрічатиметься в процесі компіляції. Коли ви створюєте або оновлюєте основний інформаційний BSC-файл, всі SBR-файлы проекту мають бути представлені на диску. Для того, щоб створити SBR-файл, що містить всю можливу інформацію, встановите опцію Generate browse info в категорії Listing Files вкладки C/C++ діалогового вікна Project Settings. Якщо з файлу необхідно виключити інформацію про локальні змінні, задайте там же опцію Exclude local variables from browse info.
Close Source Browser File
Дана команда закриває поточний SBR-файл.
ErrorLookup
Утиліту ErrorLookup використовують при необхідності отримати текст повідомлень, пов'язаних з кодами системних помилок. Введіть код помилки в поле Value, і в полі ErrorMessage автоматично відображуватиметься пов'язане з ним повідомлення.
ACTIVEX Control Test Container
Дана утиліта призначена для тестування елементів управління ACTIVEX. Вона дозволяє міняти властивості елементу управління, викликати його методи, моделювати виникнення необхідних подій і багато що інше.
OLE/COM Object Viewer
Ця утиліта відображує відомості про всі об'єкти ActiveXи OLE, встановлені на вашому комп'ютері, а також про підтримувані ними інтерфейси. Вона також дозволяє редагувати реєстр і переглядати бібліотеки типів.
Spy++
Утиліта Spy++ виводить інформацію про системні процеси, що виконуються, і потоки, існуючі вікна і віконні повідомлення, що поступають. Вказана утиліта також надає набір інструментів, що полегшують пошук потрібних процесів, потоків і вікон.
MFC Tracer
Додаткові можливості для відладки віконних застосувань, побудованих на основі MFC, надає утиліта MFC Tracer. Ця утиліта відображує у вікні відладки повідомлення про виконання операцій, зв'язаних з використанням бібліотеки MFC, а також попередження про помилки, якщо при виконанні застосування відбуваються які-небудь збої.
Дана утиліта призначена для ведення бази даних готових програмних компонентів .
RegisterControl
Елементи управління OLE, як і інші OLE-серверы, можуть використовуватися різними застосуваннями, що підтримують технологію OLE. Але для цього необхідно зареєструвати бібліотеку типів і клас елементу управління, що якраз і виконує команда RegisterControl.
Customize..
При виборі даної команди відкривається діалогове вікно Customize, яке дозволяє набудовувати меню і панелі інструментів, а також призначати різним командам поєднання клавіш.
Options..
Дана команда відкриває вікно Options, в якому задаються різні параметри середовища VisualC++.
Macro... / Record... / Play..
Ці команди використовуються для створення і відтворення макросів на VBScript. Макроси є невеликими процедурами, що містять команди VBScript і що не приймають параметрів. Макроси дозволяють значно спростити і прискорити роботу в середовищі VisualC++.
Наприклад, ви можете записати у вигляді макросу деяку часто виконувану послідовність команд, внаслідок чого для здійснення того ж самого завдання вам досить буде ввести просту комбінацію клавіш або натискувати єдину кнопку панелі інструментів.
Меню Window
Всі команди меню Window(рис.9), за винятком команди DockingView, в принципі відповідають стандартному набору команд даного меню у всіх застосуваннях Windows.
Рис
9
NewWindow
Дана команда створює нове вікно редагування для поточного проекту.
Split
Команда Split дозволяє розбити вікно редагування на декілька частин.
DockingView
За допомогою цієї команди можна закріпити панель інструментів в будь-якого краю батьківського вікна або зробити її вільно переміщуваною.
Close
Дана команда закриває активне вікно. Якщо вміст вікна не був заздалегідь збережений, то буде видано застережливе повідомлення.
CloseAll
Ця команда закриває всі відкриті вікна. Якщо вміст хоч би один з вікон не було заздалегідь збережено у файлі, буде видано застережливе повідомлення.
Next
За допомогою команди Next, що відноситься до меню Window, можна перемикатися між відкритими вікнами.
Previous
Ця команда аналогічна команді Next, але на відміну від останньої здійснює переходи між вікнами в зворотному порядку.
Cascade
Дана команда відображує на екрані всі відкриті вікна каскадом, що дає можливість користувачам бачити імена файлів в заголовках всіх вікон.
TileHorizontally
Ця команда розташовує всі відкриті вікна одне над іншим. Такий вигляд відображення зручний для порівняння вихідного і модифікованого тексту програм.
TileVertically
Команда Тilе Vertically розташовує всі відкриті вікна поруч один з одним. Такий вигляд відображення зручний при необхідності провести порівняння ієрархічних структур.
Список відкритих вікон
У нижній частині меню показаний динамічно оновлюваний список всіх відкритих на даний момент вікон. Ви можете зробити активним будь-яке вікно, клацнувши на його імені в списку.
Меню Help
Меню Help (рис.10) містить стандартні для застосувань Windows команди Contents, Search і Index, а також деякі додаткові команди.