我将资源文件添加进去后,总是报有些字符串未定义等等许多错误,我现在想,在复制对话框类的时候,有哪些事情需要做,才没有错误出现,使他像在源项目中一样作用
19 个解决方案
#1
你在新项目中打开以前的.rc文件把对话框copy再paste到你的资源列表中。
#2
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
#3
在一个工作区内对两个工程进行这样操作不会出现这样的问题吧!
只是需要修改一下原来.h和.cpp引用的头文件,
你可以这样做嘛,先做一个新的对话框,把它的OBJECTID改成和另一个工程里要拷贝的对话框相同的OBJECTID,然后Ctrl+C烤过来覆盖它!这样不会有什么资源ID冲突和没定义的错误了
只是需要修改一下原来.h和.cpp引用的头文件,
你可以这样做嘛,先做一个新的对话框,把它的OBJECTID改成和另一个工程里要拷贝的对话框相同的OBJECTID,然后Ctrl+C烤过来覆盖它!这样不会有什么资源ID冲突和没定义的错误了
#4
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
#5
同意
#6
先把两个工程insert在一起,然后直接拷贝Dialog资源,生成一个新的对话框类,最后依次替换即可。
#7
kingzai() :能不能说得详细一点!
#8
一般拷贝Dialog的话,也想连相关类也想拷贝,可以对跟对话框相关联的类上:右键 >>> Add to galary
在要引入的工程中:Project >> Add to Project >> Components .. >>
找到刚才Add to galary的东西,Insert
然后,资源+类都搞定了,这样,VC会帮你修改一些需要修改的地方
如果只拷贝资源的话,编辑资源文件,用文本方式Ctrl + C V
另外有一种方式,那就是对对话框直接选中,Ctrl + C
然后在同一窗口中关闭此工程,打开欲插入的工程,在资源视图中Ctrl + V,就ok了
但上述两种方式都可能出现资源ID号重复的情况,,现在我一般都Add >> Insert,建议大家都使用这种方式
#9
就是先将另外一个工程insert到第一个工程,然后将对话框资源直接copy到第一个,然后点击新产生的对话框产生新的对话框类。最后再拷贝代码到新产生的类...
#10
还有没有更方便的方法或者诀窍?
#11
最简单的方法是:
在工作区中选中该对话框的类名,点击右键,选中Add to Gallery.
然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,你将会看到刚才插入的类,选中它,插入就可以了。
是不是很爽阿??!!!哈哈哈
在工作区中选中该对话框的类名,点击右键,选中Add to Gallery.
然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,你将会看到刚才插入的类,选中它,插入就可以了。
是不是很爽阿??!!!哈哈哈
#12
如果只是想拷贝对话框资源的话,在继承开发环境中以二进制方式打开想要复制的对话框资源,然后全部复制。
切换到要复制到的地方,新建一个对话框,同样以二进制方式打开。粘贴即可
切换到要复制到的地方,新建一个对话框,同样以二进制方式打开。粘贴即可
#13
那还要看你的对话框是怎么样的,根据具体的情况照上边的仁兄说的做就可以了。只是对话框是一个单独的文件的话你就可以直接插入了
#14
最简单办法:打开原来的.rc,再把他拖到你现在工程的.rc中去!
#15
在类视图中点击对话框类名的右键,执行Add to Gallery,然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,最后选择刚才那个对话框类所在的工程名字,打开后选选择你的对话框类,插入就可以了。
#16
我一般用 的NothingRemained(NothingRemained)
他說的第二個方法..不穩定所以一般用第一個.
兩種方法都要注意有相同ID..相同的需要該名字
他說的第二個方法..不穩定所以一般用第一個.
兩種方法都要注意有相同ID..相同的需要該名字
#17
我看wuxuan 的方法好
什么Add to Gallery, 你的系统是rubbish bin吗?Keep it clean
什么Add to Gallery, 你的系统是rubbish bin吗?Keep it clean
#18
还有没有人有好的方法?说出来大家共享一下
#19
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
#20
#1
你在新项目中打开以前的.rc文件把对话框copy再paste到你的资源列表中。
#2
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
#3
在一个工作区内对两个工程进行这样操作不会出现这样的问题吧!
只是需要修改一下原来.h和.cpp引用的头文件,
你可以这样做嘛,先做一个新的对话框,把它的OBJECTID改成和另一个工程里要拷贝的对话框相同的OBJECTID,然后Ctrl+C烤过来覆盖它!这样不会有什么资源ID冲突和没定义的错误了
只是需要修改一下原来.h和.cpp引用的头文件,
你可以这样做嘛,先做一个新的对话框,把它的OBJECTID改成和另一个工程里要拷贝的对话框相同的OBJECTID,然后Ctrl+C烤过来覆盖它!这样不会有什么资源ID冲突和没定义的错误了
#4
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
#5
同意
#6
先把两个工程insert在一起,然后直接拷贝Dialog资源,生成一个新的对话框类,最后依次替换即可。
#7
kingzai() :能不能说得详细一点!
#8
一般拷贝Dialog的话,也想连相关类也想拷贝,可以对跟对话框相关联的类上:右键 >>> Add to galary
在要引入的工程中:Project >> Add to Project >> Components .. >>
找到刚才Add to galary的东西,Insert
然后,资源+类都搞定了,这样,VC会帮你修改一些需要修改的地方
如果只拷贝资源的话,编辑资源文件,用文本方式Ctrl + C V
另外有一种方式,那就是对对话框直接选中,Ctrl + C
然后在同一窗口中关闭此工程,打开欲插入的工程,在资源视图中Ctrl + V,就ok了
但上述两种方式都可能出现资源ID号重复的情况,,现在我一般都Add >> Insert,建议大家都使用这种方式
#9
就是先将另外一个工程insert到第一个工程,然后将对话框资源直接copy到第一个,然后点击新产生的对话框产生新的对话框类。最后再拷贝代码到新产生的类...
#10
还有没有更方便的方法或者诀窍?
#11
最简单的方法是:
在工作区中选中该对话框的类名,点击右键,选中Add to Gallery.
然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,你将会看到刚才插入的类,选中它,插入就可以了。
是不是很爽阿??!!!哈哈哈
在工作区中选中该对话框的类名,点击右键,选中Add to Gallery.
然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,你将会看到刚才插入的类,选中它,插入就可以了。
是不是很爽阿??!!!哈哈哈
#12
如果只是想拷贝对话框资源的话,在继承开发环境中以二进制方式打开想要复制的对话框资源,然后全部复制。
切换到要复制到的地方,新建一个对话框,同样以二进制方式打开。粘贴即可
切换到要复制到的地方,新建一个对话框,同样以二进制方式打开。粘贴即可
#13
那还要看你的对话框是怎么样的,根据具体的情况照上边的仁兄说的做就可以了。只是对话框是一个单独的文件的话你就可以直接插入了
#14
最简单办法:打开原来的.rc,再把他拖到你现在工程的.rc中去!
#15
在类视图中点击对话框类名的右键,执行Add to Gallery,然后在需要该对话框的工程中,选择Project->Add to project->Components and controls..,最后选择刚才那个对话框类所在的工程名字,打开后选选择你的对话框类,插入就可以了。
#16
我一般用 的NothingRemained(NothingRemained)
他說的第二個方法..不穩定所以一般用第一個.
兩種方法都要注意有相同ID..相同的需要該名字
他說的第二個方法..不穩定所以一般用第一個.
兩種方法都要注意有相同ID..相同的需要該名字
#17
我看wuxuan 的方法好
什么Add to Gallery, 你的系统是rubbish bin吗?Keep it clean
什么Add to Gallery, 你的系统是rubbish bin吗?Keep it clean
#18
还有没有人有好的方法?说出来大家共享一下
#19
有两种方法可以实现:
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.
1)你可以直接拷贝resource,用VC++以文本的方式或者直接用文本编辑器打开.rc文件,将有关的片段从
一个工程拷贝到另一个工程.你可以通过查找如下字样的片段(此片段用来定义对话框资源)来拷贝你要
的部分:
IDD_MYDIALOG_ID DIALOG DISCARDABLE 0, 0, 235, 55
这里的IDD_MYDIALOG_ID是你的对话框的ID,将到此片段结尾的部分全拷下来,通常你还要给新的工程
加一个ID(通过DevStudio的工具或者直接修改resource.h文件).
2)可以通过DevStudio的copy/paste功能.首先,在编辑器以"auto"模式打开.rc文件,这时resource
正确的显示出来.然后,选中要拷贝的对话框的ID,在Edit菜单里选Copy或者按住Ctrl+C.然后打开目标
resource文件,在Edit菜单里选Paste或者按住Ctrl+V.