2014-09-09 3 views
0

Я внес некоторые изменения в одну версию базового кода MFC, но теперь я хочу скопировать часть этих изменений, включая некоторые диалоговые окна в другой проект. Диалоговые окна можно копировать так же, как и в новый проект MFC. но я не мог найти файл, связанный с диалоговыми окнами на cpp, и файлы заголовков есть. Пожалуйста, дайте мне знать, есть ли способ скопировать диалоговые окна из одного проекта в другой MFCКак переместить диалоговые окна проекта MFC

Благодарности

ответ

2

То, что вы, вероятно, ищете являются автоматически генерируются и обрабатываются файлы ресурсы, как resource.h, resource.rc и друзья. Вы можете узнать о них подробнее здесь: How to: Copy Resources и более здесь Resource Files (Visual Studio).

Хотя эти файлы можно открыть в представлении ресурсов Visual Studios, их можно открыть и просмотреть как текст; даже в Visual Studio, пока просмотр ресурсов в настоящее время не открыт, но VS расскажет вам, если это так.

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

class CTest : public CDialog { /*...*/ enum { IDD = IDD_TEST_DIALOG }; } 

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

#define IDD_TEST_DIALOG    142 

поэтому вы должны скопировать все определения, которые используются в вашем конкретном диалоге целевой resource.h, а также и убедитесь, что нет двух одинаковых номеров. Пожалуйста, имейте в виду, что может существовать несколько файлов, содержащих ресурсы, а некоторые могут быть частью других проектов resource only dll's f.e..

Смежные вопросы