VC怎么在列表框中显示图 5

 我来答
手机用户59108
2011-03-05 · 超过40用户采纳过TA的回答
知道答主
回答量:166
采纳率:0%
帮助的人:121万
展开全部
据。在MFC类库中,列表框控件被封装为CListBox类。CListBox类提供了AddString方法向列表框中添加数据,该方法语法如下:

int AddString(LPCTSTR lpszItem);

参数说明如下。

lpszItem:表示向列表中添加的字符串数据。

返回值:表示新添加的数据在列表框中的索引位置。索引从零开始。

例如,下面的语句利用AddString方法向列表中添加数据。

m_DataList.AddString("历史");

m_DataList.AddString("地理");

m_DataList.AddString("政治");

m_DataList.AddString("生物");

m_DataList.AddString("体育");

此外,还可以使用InsertString方法向列表框中添加数据,该方法语法如下:

int InsertString(int nIndex, LPCTSTR lpszItem);

参数说明如下。

þ nIndex:表示列表中的一个索引位置,方法将在该位置处添加数据,如果该参数为-1,则在列表框中数据的末尾位置添加。

þ lpszItem:表示向列表中添加的字符串数据。

返回值:表示新添加的数据在列表框中的索引位置。索引从零开始。

例如,下面的语句应用InsertString方法向列表框中添加数据。

m_DataList.InsertString(0, "历史");

m_DataList.InsertString(1, "地理");

m_DataList.InsertString(2, "政治");

m_DataList.InsertString(3, "生物");

m_DataList.InsertString(4, "体育");

向列表框中添加数据

7.7.2 为列表框中的项目添加复选功能
在使用列表框控件时,有时需要利用列表框进行多项选择。这就需要列表框中的选项具有类似复选框的功能。那么如何让列表框中的数据以复选框的形式显示呢?可以按如下的方法实现。

例7.3 为列表框中的项目添加复选功能。
(1)创建一个基于对话框的工程,向对话框中添加列表框和按钮控件,如图7.49所示。

(2)利用类向导为列表框命名为m_DataList,类型为CListBox,如图7.50所示。

图7.49 对话框资源设计

图7.50 为列表框控件关联名称

(3)在对话框的头文件中将m_DataList的类型CListBox修改为CCheckListBox。

CCheckListBox m_DataList;

CCheckListBox派生于CListBox,它为数据项提供了复选功能。

(4)在列表框的属性窗口中设置Has strings属性,并设置Fixed自绘风格,如图7.51所示。

图7.51 设置列表框属性

(5)在对话框初始化时向列表框中添加数据。

m_DataList.InsertString(0, "历史");

m_DataList.InsertString(1, "地理");

m_DataList.InsertString(2, "政治");

m_DataList.InsertString(3, "生物");

m_DataList.InsertString(4, "体育");

(6)处理“确定”按钮的单击事件,统计用户选择的学科信息。

void CCheckListDlg::OnConfirm()

{

int nItemCount = m_DataList.GetCount(); //获取项目数量

CString szContent, szItemData; //定义字符串变量

szContent = "";

for (int i=0; i<nItemCount; i++) //遍历列表项

{

if (m_DataList.GetCheck(i) == BST_CHECKED) //判断列表项是否被选中

{

m_DataList.GetText(i, szItemData); //获取列表项文本

szContent += szItemData + "\r\n"; //记录列表项文本

}

}

if (!szContent.IsEmpty())

{

MessageBox(szContent, "您选择的学科"); //显示用户选择的信息

}

}

(7)运行程序,效果如图7.52所示。

图7.52 统计列表框信息

7.7.3 同时选择多个项目
默认情况下,列表框控件中的项目只能同时选择一项,但在实际开发中,有时需要选择多项数据。为此,需要设置列表框的Selection属性为Multiple,如图7.53所示。

图7.53 列表框属性设置

这样,在列表框中即可选择多项数据,如图7.54所示。

图7.54 多项选择数据
li668xiao
2011-02-28 · TA获得超过611个赞
知道小有建树答主
回答量:412
采纳率:61%
帮助的人:260万
展开全部
自己重写一个列表框,不用标准的列表框控件。这样就能随意添加自己需要的功能,比如你说的显示位图。
追问
有具体代码么,我想图片可以随意的显示在哪行哪列
追答
这种东西哪儿有现成的,都是根据具体情况自己写的。你可以建立一个窗口,将其裁剪成列表框的样子,并根据窗口的大小将它分割成若干个行列,根据你要显示图片的行和列计算出来显示图片时的两个坐标,然后把图贴上去就是了。剩下的就是处理你需要的消息,比如窗口大小改变,显示区域重绘,鼠标单击双击消息等。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式