在CTabCtrl上动态创建CListCtrl控件
m_List.Create(WS_OVERLAPPED|WS_CHILD|WS_VISIBLE|LVS_REPORT|LVS_AUTOARRANGE|LVS_SHOWSELALWAYS|LVS_EDITLABELS ,rect,&m_tabListTable,);
m_List.ModifyStyle(,WS_EX_CLIENTEDGE,SWP_DRAWFRAME);
最后的Id只要不跟resource.h里的重复,随便填一个。
效果:

=============================================================
补充:
当在XP+VC6下写的程序放到Win7上运行时,可能会出现不愉快的视觉效果,我手工用画图(专注画图好多年,简单方便又快捷)标注了下,为了突出我使用了蓝色:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAApQAAAH5CAIAAACwLzlyAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAr8SURBVHhe7dkxjiPXGUZRLVa5oeUoVeTAC1LsSAIEGF6BXXYBBPHjocCgp/gu+xx8wbwOhmSxpi5a+umn3/4wMzOz0ubZzMzMNt88m5mZ2eabZzMzM9t882xmZmabb57NzMxs883zan/9+fux/wSd7zy0ceXNzMwWm+fVjqgcIfz3v/6Z2y9/+/k5jftvXHkzM7PF5nm1s9wjM4n94++/Hv3+/y/hAccbHlfezMxssXle7ehKOt6PX8Q33/FWx5U3MzNbbJ5Xq8d7/HDbHe92XHkzM7PF5nk18b5n4m1mZi9tnlcT73sm3mZm9tLmeTXxvmfibWZmL22eVxPveybeZmb20uZ5NfG+Z+JtZmYvbZ5XE+97Jt5mZvbS5nk18b5n4m1mZi9tnlcT73sm3mZm9tLmeTXxvmfibWZmL22eVxPveybeZmb20uZ5NfG+Z+JtZmYvbZ5XE+97Jt5mZvbS5nk18b5n4m1mZi9tnlcT73vWerdmZva1G/G92jyvVo/38f4BYGdHrUZ8rzbPqx1/aTTe5443b2Zmtu3OXzVHfK82z6vV421mZrbzfmy8//eL/Wa+238V93m/s+LVcMfScv83eFO8d/gV/HgP5x7/S/vxk8+ez/ud93w1xr+I+/f8xi7mjrXW3vINnv+mzpce8b3aPK/2eF5s8uB4bKvH2Q3zeb/zilfDHWutvfEbPF96xPdq87za45PsdlN6NHz2PAqfV7wa7lhr7Y3f4PnSI75Xm+fVHp9kt5vSo+Gz51H4vOLVcMdaa2/8Bs+XHvG92jyv9vgku92UHg2fPY/C5xWvhjvWWnvjN3i+9Ijv1eZ5tccn2e2m9Gj47HkUPq94Ndyx1tobv8HzpUd8rzbPqz0+yW43pUfDZ8+j8HnFq+GOtdbe+A2eLz3ie7V5Xu3xSXa7KT0aPnsehc8rXg13rLX2xm/wfOkR36vN82qPT7LbTenR8NnzKHxe8Wq4Y621N36D50uP+F5tnld7fJLdbkqPhs+eR+HzilfDHWutvfEbPF96xPdq87za45PsdlN6NHz2PAqfV7wa7lhr7Y3f4PnSI75Xm+fVHp9kt5vSo+Gz51H4vOLVcMdaa2/8Bs+XHvG92jyv9vgku92UHg2fPY/C5xWvhjvWWnvjN3i+9Ijv1eZ5tccnOf5wvMBWOy/0+OEHz+f9ziteDXestXb/N3hHvI+/2szMzL5qd8T7+AMA8FXEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBixBsAYsQbAGLEGwBi7oi3mZmZffnE28zMLLYfFe/j7zUzM7MftK+Pt5mZmW20eTYzM7PNN89mZma2+ebZzMzMNt88m5mZ2eabZzMzM9t882xmZmabb57NzMxs882zmZmZbb55NjMzs803z2ZmZrb55tnMzMw23zybmZnZ5ptnMzMz23zzbGZmZjvvtz/+C4ptCYXmj1nHAAAAAElFTkSuQmCC" alt="" />
图中蓝色部分可能会显示为当前系统的设定值(我瞎猜的不要当真),这需要我们手工的改写tab控件的背景色。
要做的就是继承CTabCtrl来实现自己的类,例如CTabCtrlWLS,然后实现对WM_ERASEBKGND的响应。
BOOL CTabCtrlWLS::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default RECT stRect;
GetClientRect(&stRect); //创建画刷,外部。
//CBrush oBrush;
//oBrush.CreateSolidBrush(RGB(236,233,216)); //填充控件背景
pDC-> FillRect(&stRect,&oBrushBKGND); //return CTabCtrl::OnEraseBkgnd(pDC);
return true;
}
在CTabCtrl上动态创建CListCtrl控件的更多相关文章
- winform 用户控件、 动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- winform用户控件、动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日
好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修 ...
- mfc 动态创建EDIT控件
知识点: CWnd::Create CWnd::CreateEx Spy++工具 动态创建控件 一. CWnd::Create 参数 virtual BOOL Create( LPCTSTR lpsz ...
- 【VS开发】动态创建ActiveX控件
bool CCollectDataDlgDlg::CreateMyCtrl(LPRECT lpRect, UINT nID, CWnd *pParent) { CLSID clsid; wstri ...
- [UE4]认识CanvasPanelSlot,Construct Object From Class动态创建UI控件
Canvas Panel Slot是UserWidget的Canvas Panel组件容器内的组件特有的属性. 只有放置在Canvas Panel容器内才会有Canvas Panel Slot属性 可 ...
- 用ATL和MFC来创建ActiveX控件
摘要:目前MFC和ATL代表了两种框架,分别面向不同类型的基于Windows的开发.MFC代表了创建独立的Windows应用的一种简单.一致的方法:ATL提供了一种框架来实现创建COM客户机和服务器所 ...
- asp.net动态网站repeater控件使用及分页操作介绍
asp.net动态网站repeater控件使用及分页操作介绍 1.简单介绍 Repeater 控件是一个容器控件,可用于从网页的任何可用数据中创建自定义列表.Repeater 控件没有自己内置的呈现功 ...
- 袁创:使用反射动态调用ActiveX控件
■■■■前言 目前的基于.NET平台的软件研发中仍然存在大量的对COM及ActiveX控件的调用.使用C#调用ActiveX控件时一般是使用vs.net工具自动生成的互操作性程序集.这种方法操作简单, ...
随机推荐
- Angular系列---- AngularJS入门教程03:AngularJS 模板(转载)
是时候给这些网页来点动态特性了——用AngularJS!我们这里为后面要加入的控制器添加了一个测试. 一个应用的代码架构有很多种.对于AngularJS应用,我们鼓励使用模型-视图-控制器(MVC)模 ...
- mysqldump: Couldn't execute 'show table status '解决方法
执行:[root@host2 lamp]# mysqldump -F -R -E --master-data=2 -p -A --single-transaction 在控制台端出现 mysqld ...
- 在做excel导出时如何将excel直接写在输出流中
之前做excel导出时,我都是先将文件写在服务器上,然后再下载下来,后来发现原来可以直接将文件写在输出流里边. 下面是一个小demo: package com.huaqin.fcstrp.util; ...
- 通过微软的cors类库,让ASP.NET Web API 支持 CORS
前言:因为公司项目需要搭建一个Web API 的后端,用来传输一些数据以及文件,之前有听过Web API的相关说明,但是真正实现的时候,感觉还是需要挺多知识的,正好今天有空,整理一下这周关于解决COR ...
- PHP+MySql例子
对于熟悉做网站的人来说,要想网站做成动态的,肯定要有数据库的支持,利用特定的脚本连接到数据库,从数据库中提取资料.向数据库中添加资料.删除资料等.这里我通过一个实例来说明如何用php连接到数据库的. ...
- 百度地图刷新显示不完整?(应该是和div顺序有关系)
解决方案:1异步加载(jquery(function(){loadJScript():})) 2解析加载设置了个延迟(setTimeOut(getInit,1000))
- Python关键字参数
关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict.请看示例: #!/usr/bin/env python # -*- coding: utf-8 -*- ...
- 移动端H5---页面适配问题详谈(一)
一.前言 昨天唠叨了哈没用的,今天说点有用的把.先说一下响应式布局吧,我一直认为响应式布局的分项目,一下布局简单得项目做响应式还是可以可以得.例如博客.后台管理系统等.但是有些会认为响应式很牛逼,尤其 ...
- [C#]多线程下载
发现电脑里以前编写的下载程序... 做个记录,那时做的挺匆忙的,没用委托,通过公开出窗体来修改下载进度,做的比较乱... ==!! 程序具体功能(流程): 1.检测系统托盘图标内的进程名是否符合要求 ...
- Vue条件渲染
gitHub地址:https://github.com/lily1010/vue_learn/tree/master/lesson08 一 v-if显示单个元素 注意else只能跟在v-if或者v-s ...