zoukankan      html  css  js  c++  java
  • 学习远控界面设计二: 程序界面列表处理

    enum
    {
        ONLINELIST_IP=0,          //IP的列顺序
        ONLINELIST_Proxy,          //代理
        ONLINELIST_COMPUTER_NAME, //计算机名/备注
        ONLINELIST_OS          //操作系统
    };

    建立枚举列表条目如上,将定义放在头文件里。这样以后方便改动

    建立一个函数,添加处理列表函数。

    我们先来完善上线列表设计。

    typedef struct //声明结构体
    {
        char    *title;           //列表的名称
        int        nWidth;   //列表的宽度
    }COLUMNSTRUCT;
    
    COLUMNSTRUCT g_Column_Data[] =  //声明结果体数组
    {
        {"IP",                200    },
        {"计算机名/备注",    200    },
        {"操作系统",        200    },
        {"proxy",            200    }
    };
    
    int g_Column_Count=4; //列表的个数 从0开始

    int CGhostDlg::InitList(void)
    {
    //初始化上线列表
    for (int i = 0; i < g_Column_Count; i++)
    {
    m_list_oline.InsertColumn(i, g_Column_Data[i].title,LVCFMT_CENTER,g_Column_Data[i].nWidth); //以居中的方式,循环插入数据
    }
    return 0;
    }

     

    再来看InitList(void) 函数

    好了。我们现在开编译运行看看什么结果。(记得在OnInitDialog()函数中调用自定义的函数)

    现在上线列表设计完成了,接下来设计日志列表。

    远控上线下线,都需要日志来记录或者提醒。

    COLUMNSTRUCT g_Column_Data_Message[] = 
    {
        {"信息类型",        68    },
        {"时间",            100    },
        {"信息内容",        660    }
    };
    
    int g_Column_Count_message=3; //消息个数3

    在InitList 函数里循环插入条目。

    for (int i = 0; i < g_Column_Count_message; i++)
        {
            m_list_msg.InsertColumn(i, g_Column_Data_Message[i].title,LVCFMT_CENTER,g_Column_Data_Message[i].nWidth);
        }

    编译运行,看看结果。

    最后代码完成如下:

  • 相关阅读:
    记一次与用户的亲密接触
    拨开障目的叶,一览CMDB庐山真面目
    广通软件获“2016年度中国最具影响力IT运维管理软件提供商”殊荣
    CMDB三大绝招,助我站稳运维之巅
    datetime module总结
    Python time module总结
    IPMItool小结
    Python selenium 延时的几种方法
    Python 字典操作
    YUM 配置
  • 原文地址:https://www.cnblogs.com/killbit/p/5093409.html
Copyright © 2011-2022 走看看