把现有窗口布局快速移植到新的工程中

来源:互联网 发布:js 获取毫秒数 编辑:程序博客网 时间:2024/06/11 01:22

 如何把我们在现有工程中已经修饰好的窗口,各种控件的位置和属性快速完整的移植到新的工程中去呢?

首先在原项目工程目录中找到*.rc文件,比如说我的这个项目对应的是SyncDataMonitor.rc,然后在打开他找到想要

移植到新的工程的窗口的描述,

IDD_SYNCDATAMONITOR_DIALOG DIALOGEX 0, 0, 561, 274
STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_APPWINDOW
CAPTION "百游数据库同步监控平台"
FONT 9, "宋体", 0, 0, 0x1
BEGIN
    GROUPBOX        "监控区",IDC_STATIC_Control,266,9,288,257
    CONTROL         "",IDC_STATIC_HISTOGRAM,"Static",SS_BLACKRECT,272,22,275,237
    GROUPBOX        "异常信息",IDC_STATIC,7,10,254,258
    CONTROL         "List1",IDC_LIST_Error_LogList,"SysListView32",LVS_REPORT | WS_BORDER | WS_TABSTOP,14,23,241,240
END

IDD_DIALOGALARM DIALOGEX 0, 0, 339, 96
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "收到信息"
FONT 9, "宋体", 0, 0, 0x0
BEGIN
    CONTROL         "List1",IDC_LISTALARM,"SysListView32",LVS_REPORT | LVS_SINGLESEL | WS_BORDER | WS_TABSTOP,3,4,331,85
END

把这段话拷贝到你新工程的.rc文件中,这时在新工程的资源视图中还不能正确显示这个对话筐,在项目工程文件

中的Resource.h加入

#define IDC_STATIC_Control              1001

#define IDC_STATIC_HISTOGRAM            1008
#define IDD_DIALOGALARM                 170
#define IDC_LISTALARM                   1032

注意1001这些序号从系统已经定义好的最大的开始逐次加一就可以,这时候保存,再到资源视图中打开这个窗口,

一个布局规整的窗口出现了.

结束语:这只是一个小窍门,在实际工作中如果你有很多自绘控件,和动态绘制的东西,你还是需要在代码中实现.

原创粉丝点击