поле Class Name в редакторе ресурсов
Имеется значит VC++ 7.1 (студия 2003). Требуется создать диалог, используя регистрацию класса окна и функцию CreateDialogParam. Класс, который надо регистрировать, вроде должен вводиться в поле Class Name, но оно недоступно. Я пробовал дописать вручную в rc файле CLASS "wndclass", но эффекта никакого. Как всё-таки можно всё это организовать?
Цитата:
Originally posted by (C)dragon
Имеется значит VC++ 7.1 (студия 2003). Требуется создать диалог, используя регистрацию класса окна и функцию CreateDialogParam. Класс, который надо регистрировать, вроде должен вводиться в поле Class Name, но оно недоступно. Я пробовал дописать вручную в rc файле CLASS "wndclass", но эффекта никакого. Как всё-таки можно всё это организовать?
Имеется значит VC++ 7.1 (студия 2003). Требуется создать диалог, используя регистрацию класса окна и функцию CreateDialogParam. Класс, который надо регистрировать, вроде должен вводиться в поле Class Name, но оно недоступно. Я пробовал дописать вручную в rc файле CLASS "wndclass", но эффекта никакого. Как всё-таки можно всё это организовать?
Во-первых,название класса окна задается при регистрации класса (RegisterClassEx), но никак не при создании шаблона диалога в ресурсах.
Во-вторых, зачем регистрировать класс окна при создании диалога на основе ресурсного шаблона? Если внимательно присмотреться к функции CreateDialogParam, то станет заметным, что в нее передается не название класса окна, а название шаблона в ресурсах, а точнее ID шаблона, преобразованный к названию шаблона с помощью макроса MAKEINTRESOURCE.
http://www.wasm.ru/article.php?article=1001010
Да, если поправить rc-файл вручную, и передать MAKEINTRESOURCE(DIALOG_0), то всё работает, но странно, почему VC++ не даёт редактировать Class Name, приходиться в блокноте этот параметр дописывать.
Да, если поправить rc-файл вручную, и передать MAKEINTRESOURCE(DIALOG_0), то всё работает, но странно, почему VC++ не даёт редактировать Class Name, приходиться в блокноте этот параметр дописывать.