Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Помощь и всплывающие подсказки
Подробные инструкции по созданию справочной системы можно найти во многих источниках, в частности, и в [1,2]. В любом случае проще всего начать с того, что на этапе создания каркаса приложения заказать мастеру подключение контекстной системы помощи. В этом случае будут сгенерированы нужные файлы и программный код, поддерживающий справку. Имейте при этом ввиду, что всякий раз при построении вашего приложения будет вновь создаваться файл справки. В связи с этим при добавлении своих справочных сведений надо или модифицировать файлы (в частности, .rtf) или подключать свой собственный файл, если он строился с использованием какого-либо стороннего продукта. Теперь о всплывающих подсказках. На вкладке ресурсов рабочего пространства выберите пункт String Table и откройте эту таблицу. Посмотрите, к примеру, на такую строку таблицы: ID_FILE_CLOSE 57602 Close the active document\nClose
Догадались? Текст «Close the active document» выводится в строке статуса, когда выбирается тема Close меню File, а текст «Close» выводится тогда, когда мы подводим курсор мыши к соответствующей кнопке. Кнопка «привязана» к идентификатору ID_FILE_CLOSE в файле ресурсов. Чтобы найти это место, проще всего запустить поиск идентификатора ID_FILE_CLOSE во всех файлах проекта. Можно русифицировать все подсказки так, как описано выше в «Русификации приложений».
Использование ini-файла Большинство приложений, создаваемых с помощью мастеров ИС MVC, имеют theApp – экземпляр класса CWinApp, представляющий собой объект приложение. Этот объект содержит ряд полезных член-данных и методов. Так как этот объект объявляется в глобальной области, то он автоматически конструируется при запуске приложения (еще до начала выполнения функции main()) и разрушается при завершении приложения. Объект theApp, в частности, поддерживает обработку ini-файла или, как альтернативу, чтение и запись данных приложения в реестр Windows. С точки зрения работы с ini-файлом класс CWinApp содержит следующие компоненты: · char * m_pszProfileName - имя ini-файла (имя_приложения.ini), не включающее пути; · CString GetProfileString(LPCTSTR lpszSection, LPCTSTR lpszEntry, LPCTSTR lpszDefault = NULL ); · UINT GetProfileInt( LPCTSTR lpszSection, LPCTSTR lpszEntry, int nDefault ); · BOOL WriteProfileInt( LPCTSTR lpszSection, LPCTSTR lpszEntry, int nValue ); · BOOL WriteProfileString( LPCTSTR lpszSection, LPCTSTR lpszEntry, LPCTSTR lpszValue );
Если Вы разрабатываете не консольное, а оконное приложение, то приведенные выше функции (WriteProfileInt() и др.) «работают» с реестром, а не с ini-файлом. В таком приложении для использования ini-файла надо убрать вызов функции CWinApp::SetRegistryKey() в функции InitInstance(). Если же Вы счастливый обладатель версии Visual Studio 2008 или более поздней, то Вас это не спасет и свои параметры Вы можете сохранять (или извлекать) в реестре Windows. По умолчанию это будет раздел “HKEY_USERS\S-1-5-21-796845957-1343024091-839522115-1003\Software\Local AppWizard-Generated Applications\имя_каталога_проекта”, если Вы не изменяли параметр функции SetRegistryKey(), вызываемой в функции InitInstance() Вашего приложения с помощью приведенных выше функций. Если все же хочется использовать собственный файл, то надо его записывать и читать как обычный текстовый или двоичный файл, формат которого Вы определяете сами.
Функции GetProfileString() и GetProfileInt() предназначены для чтения из файла значений ключей строкового и целого типа соответственно, а WriteProfileString() и WriteProfileInt() – для их записи. Данные других типов напрямую не поддерживаются, но их можно преобразовать в строки символов и обрабатывать. Возвращаемые значения функций GetProfileString() и GetProfileInt() – это прочитанные из файла значения ключей строкового и целого типа соответственно. Если запрашиваемые ключи в файле отсутствуют, то состояние ошибки не возникает и функции возвращают значения по умолчанию lpszDefault и nDefault соответственно. Функции WriteProfileString() и WriteProfileInt() возвращают значение true в случае успешной записи значения ключа и значение false – в противном случае. Формальные параметры перечисленных функций имеют следующее назначение: · lpszSection –имя секции файла; · lpszEntry – имя ключа, хранящегося в данной секции файла; · nDefault и lpszDefault – значения ключей по умолчанию (целочисленного и строкового типов соответственно); · nValue и lpszValue – значения ключей (целочисленного и строкового типов соответственно).
|
|||
Последнее изменение этой страницы: 2018-04-12; просмотров: 453. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |