WinPro logo.

Файл описания ресурсов

Файл описания ресурса - это текстовый файл с расширением .rc, который может быть набран однобайтовыми, двухбайтовыми или Unicode символами.

Здесь дано описание информации, которую может содержать файл описания ресурсов.

НА ЭТОЙ СТРАНИЦЕ:

Комментарии
Предопределенные макросы

Директивы
препроцессора
РесурсыЭлементы
управления
Операторы
#define
#elif
CURSOR
ICON
PUSHBUTTON CAPTION

Комментарии

В rc-файлах используется C-стиль написания комментариев, причем поддерживаются и однострочные и многострочные комментарии. Однострочный комментарий начинается с двух передних слешей (//), а его действие распространяется до конца строки:

NewCursor CURSOR NEW.CUR // новый курсор приложения.

Многострочные комментарии начинаются с открывающего (/*) и заканчиваются закрывающим (*/) ограничителями, в пределах которых текст рассматривается как комментарий:

/*
   Resources.Rc

   Содержит описания ресурсов приложения.
   Идентификаторы эл-тов управления
   определены в Resources.H.
*/

#include "resources.h"

Предопределенные макросы

Компилятор ресурсов не поддерживает предопределенные макросы ANSI C (__DATE__, __FILE__, __LINE__, __STDC__, __TIME__, __TIMESTAMP__). Поэтому эти макросы нельзя использовать в заголовочных файлах, в которых встречаются описания ресурсов.

Существует предопределенная символическая константа RC_INVOKED, которая позволяет скрывать от компилятора ресурсов участки заголовочного файла, которые он не должен компилировать. Чтобы организовать в файле такую условную компиляцию не компилируемые участки нужно размещать между строками #ifndef RC_INVOKED и #endif:

#ifndef RC_INVOKED
#pragma message("Including CntrOutl.H from " __FILE__)
#endif


#define

#define - сопоставляет с определенным значением указанное имя. Все последующие употребления этого имени будут заменяться на данное значение.

#define name value

name - имя. Этим значением может быть любая комбинация букв, цифр и знаков пунктуации, допустимых для препроцессора C/C++.
value - значение, которым может быть целое число или строка символов.

Пример:
#define NONZERO    1
#define USERCLASS "MyControlClass"

#elif

Директива #elif необязательный параметр в блоках условной компиляции #ifdef, #ifndef или #if. Эта директива управляет компиляцией файла описания ресурсов, проверяя выражение с символической константой. Если результат выражения не нулевой, то директива позволяет компилятору обрабатывать операторы до появления директив #endif, #else или #elif. В ином случае компилятор будет пропускать все операторы до директив #endif, #else или #elif.

#elif constant-expression

constant-expression - проверяемое выражение. Им может быть символическая или целочисленная константа или выражение с ними и арифметическими операторами и операторами отношения.

Пример:
#if Version < 3
BITMAP 1 errbox.bmp
#elif Version < 7
BITMAP 1 userbox.bmp
#endif

В этом примере директива #elif позволяет оператору обработать второй оператор BITMAP если символическая константа Version меньше 7. При этом сам по себе этот оператор будет обработан при значении Version большем или равным 3.


CURSOR

Описывает форму обычного или анимированного курсора.

nameID CURSOR filename

nameID - идентификатор ресурса, которым может быть либо уникальное имя либо 16-битное беззнаковое целое число.
Filename - имя файла, в котором находится ресурс. Если файл располагается не в текущей директории, то кроме его имени должен быть указан и полный путь к нему. В этом случае параметр заключается в двойные кавычки.

Пример:
cursor1 CURSOR bullseye.cur
2          CURSOR "d:\\cursor\\arrow.cur"

ICON

Описывает обычную или анимированную пиктограмму.

nameID ICON filename

nameID - уникальное имя или 16-битное беззнаковое целочисленное значение, которое используется как идентификатор ресурса.

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

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

Пример:
desk1 ICON desk.ico
11      ICON custom.ico


PUSHBUTTON

PUSHBUTTON - оператор для определения ресурса, создающего элемент управления "кнопка". Элемент выполнен в виде круглоугольного прямоугольника с указанным текстом, выровненном по центру элемента. При каждом выборе этой кнопки пользователем высылается сообщение ее родителю.

PUSHBUTTON text, id, x, y, width, height [[, style [[, extended-style]]]]

style - стили кнопки, которые могут быть комбинацией стиля BS_PUSHBUTTON со стилями WS_TABSTOP, WS_DISABLED и WS_GROUP. Если стиль не указан, то по умолчанию используется комбинация стилей BS_PUSHBUTTON | WS_TABSTOP.

Для получения информации по другим параметрам смотрите страницу "Общие параметры элементов управления".

Пример:
PUSHBUTTON "ON", 7, 10, 10, 20, 10


CAPTION

CAPTION - оператор для указания текста заголовка полосе заголовка диалогового окна. По умолчанию полоса заголовка пуста.

CAPTION "captiontext"

captiontext - строка символов в двойных кавычках.

Пример:
CAPTION "Error!"

Алексей ЕГОРОВ

содержание: oГлавная
oСообщения
oРесурсы
- ФАЙЛ ОПИСАНИЯ РЕСУРСОВ
- Общие параметры элементов управления
- Курсоры
- Пиктограммы
- Меню
гостевая книга
Hosted by uCoz