自定义控件—特效列表控件

一、创建目标

建立类似于Windows XP窗口中左部的列表控件,如下图所示

用户可自由添加列表成员

控件可以折叠和伸展,折叠时只显示标题栏

控件可显示在由CWnd派生的窗口类中

每个成员可响应鼠标事件,并向用户提供编程接口

二、设计与实现

1、对象

特效列表控件(TaskListBox)——提供用户编程接口,处理与窗口对象衔接。

特效列表(TaskList)——受特效列表控件委托,实现控件的所有功能。

成员(Item)——代表每个列表成员,可以响应鼠标事件。

边框(TaskFrame)——处理特效列表控件的标题与边框绘制。

折叠按钮(PuckerBtn)——实现特效列表控件的折叠动作。

2、对象结构如下图所示

时间: 2024-08-02 02:17:53

自定义控件—特效列表控件的相关文章

ASP.NET自定义控件 第八天 显示多个条目星级评分的列表控件

1. 引言 前几次任务里我们开发的星级控件只能显示一个条目的评分,在现实生活中, 经常会遇到需要向用户展示一系列数据的评分状态,例如下图所示: 列表控件-"> 本次任务里,我们将一起开发这样一个控件. 广告时间--最近在尝试写英文文章,申请了一个英文博客www.dev6.cn,欢 迎大家留下墨宝 2. 分析 通过上图可以看到,该自定义控件是一系列数据评分等级的列表,很显然需要 作为一个数据绑定控件来实现才可以灵活的显示多条数据,并且在该列表上方显 示了标题和当前的日期,为了允许用户灵活的定

WPF自定义控件与样式(7)-列表控件DataGrid与ListView自定义样式

原文:WPF自定义控件与样式(7)-列表控件DataGrid与ListView自定义样式 一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: DataGrid自定义样式: ListView自定义样式: 二.DataGrid自定义样式 DataGrid是常用的数据列表显示控件,先看看实现的效果(动态图,有点大): DataGrid控件样式结构包括以下几个部分

ASP.NET自定义控件 第七天 开发具有丰富特性的列表控件

1. 引言 在上次任务里,我们为星级控件增加了数据绑定的特性,但是在实际运用中还 会产生更多的需求,例如用户可能希望创建一个课程列表(如图1): 开发具有丰富特性的列表控件-"> 或者在数据项比较多的时候,能够手动控制数据的排列方式(图2) 本次任务中,我们将一起开发这样的控件. 2. 分析 以上两个图例中显示的都是列表控件,在ASP.NET2.0中ListControl类是列表 控件的父类,通过上次任务的分析可以了解CheckBoxList.RadioButtonList和 DropDo

打造称心如意的列表控件

列表是常用的控件,于是要想想怎么弄好它. 一.布局迷思 话说 N 久之前,矩阵型的布局是用 <table> 做到的,那时我为这个算法研究过一阵子(从菜鸟来--).后来 CSS 布局渐替,到 CSS3,出现过几种布局方案. 浮动,设置 float:left 内联级块,设置 display:inline-block CSS 3 弹性布局,设置 box/box-flex/box,根据版本新旧而不同 他们的优缺点如下表, float:left display:inline-block box/box-

listbox-MFC列表控件中删除记录的问题

问题描述 MFC列表控件中删除记录的问题 要实现点击按钮后删除列表中的一条记录代码如下:void CMyAccountView::OnClickedDelete(){ int nCurSel = m_listctrl.GetSelectionMark(); if (LB_ERR == nCurSel) MessageBox(_T(""请选择所要删除的内容!""));else m_pSet->MoveFirst(); for(int i=0;i m_pSet-&

MFC 列表控件CListCtrl加载类似QQ界面的头像与文字

本文主要讲述使用VS2012 MFC的CListCtrl(列表)控件加载类似于QQ界面的图片与文字数据.主要通过CListCtrl::InsertColumn.InsertItem.SetItemText向列表插入数据,CImageList插入BMP图片或ICON图标. 一.创建项目及界面 1.创建项目     创建项目名为"QQList"的基于MFC对话框的应用程序.资源视图中对话框IDD_QQLIST_DIALOG删除"TODE"和按钮,并添加List Cont

为列表控件添加水平滚动条

Win32的标准控件之中,列表控件(ListBox)并没有和列表视图(ListView)一样提供水平滚动条,所以如果列表项的长度超过列表的宽度的话,那么超出的部分将无法显示.在本文中我将以一个简单的例子来说明如何使用SDK来解决这一问题,在这个例子中,我将为一个列表控件添加100行如下格式的文本: This is a very very very very very long sentence - line 1 This is a very very very very very long se

ASP.NET 2.0移动开发之列表控件

asp.net|控件 概述 在很多情况下,我们都会使用到列表控件来方便用户选择一些选项.例如在某网站上注册新用户时,通常会询问你的性别是"男"还是"女",这时我们用单项按钮以供用户做出相应的选择.还有当你填写自己的家庭地址时,通常会使用到一个包含各省省名的下拉列表来供用户直接选择,这样可以减少用户的输入量.上述的这些单项按钮和下拉列表都在ASP.NET移动程序中都是以列表控件的形式存在的.我们可以使用列表控件来呈现各种形式(单项.多选.下拉列表)的列表,以供用户选择

ASP.NET 数据列表控件的分页总结(一)自定义方法分页和PageDataSource类分页

在Asp.net中,提供了三个功能强大的列表控件:GridView.DataList和Repeater控件,但其中只有GridView控件提供分页功能.虽然DataGrid提供了分页功能,不过看上去功能有限,但是我们可以通过GridView的一些属性来获取状态以及增加首页.尾页功能按钮.如果在速度效率不是很讲究的情况下,由DataGrid自己管理分页还是不错的,付出的代价就是要把整个相关数据取出来后再删选指定页的数据.好处就是开发速度快,不需要写分页的存储过程.所以若需要追求执行效率,而且数据量