首页 > 其他 > 详细

学习远控界面设计三: 程序界面列表处理2

时间:2016-01-01 16:56:06      阅读:312      评论:0      收藏:0      [点我收藏+]

上次记录到了上线列表条目设计和日志列表条目设计,这次记录条目会随着窗口的大小来改变大小。

我们先来完成上线设计,首先声明列的总宽度:

int g_Column_Online_Width=0;  //列总宽度

然后我们来到InitList(void)函数。

 

g_Column_Online_Width+=g_Column_Data[i].nWidth;

这样就得到了总宽度。

 

来到函数:OnSize(UINT nType, int cx, int cy)

 

技术分享

 

double dcx=cx;     //对话框的总宽度

          for(int i=0;i<g_Column_Online_Count;i++){                   //遍历每一个列
            double dd=g_Column_Online_Data[i].nWidth;     //得到当前列的宽度
            dd/=g_Column_Online_Width;                    //看一看当前宽度占总长度的几分之几
            dd*=dcx;                                       //用原来的长度乘以所占的几分之几得到当前的宽度
            int lenth=dd;                                   //转换为int 类型
            m_CList_Online.SetColumnWidth(i,(lenth));        //设置当前的宽度

 

我们来编译运行看结果。

 

技术分享

上线的条目已经会随着我们窗口大小来改变了。接下来完善日志条目。

 

同样也声明日志列表总宽度:

int g_Column_Message_Width=0;  //列总宽度
        for(int i=0;i<g_Column_Count_message;i++){                   //遍历每一个列
            double dd=g_Column_Data_Message[i].nWidth;     //得到当前列的宽度
            dd/=g_Column_Online_Width;                    //看一看当前宽度占总长度的几分之几
            dd*=dcx;                                       //用原来的长度乘以所占的几分之几得到当前的宽度
            int lenth=dd;                                   //转换为int 类型
            m_list_msg.SetColumnWidth(i,(lenth));        //设置当前的宽度

 

技术分享

 

技术分享

 

最后,编译运行。我们来看看结果。

 

技术分享

学习远控界面设计三: 程序界面列表处理2

原文:http://www.cnblogs.com/killbit/p/5093436.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!