MFC单文档怎么获取列表控件的行数

MFC单文档怎么获取列表控件的行数,第1张

这是我的程序代码片段,有关获取鼠标点到列表框行列的代码,发给你参考下:

typedef pair<int,int> CellIndex; // Row, Column

// 当鼠标右键点击时有一个CPoint传给你,然后根据CPoint来获取列表框的行和列。

// 用HitTest函数即可获取。

CListCtrlEx::CellIndex CListCtrlEx::PointToIndex(const CPoint&point)

{

LVHITTESTINFO lvHitTestInfo;

CRect rect;

lvHitTestInfopt=point;

if(HitTest(&lvHitTestInfo)>=0||(SubItemHitTest(&lvHitTestInfo)>=0)&&lvHitTestInfoiItem>=0)

{

intnRow =lvHitTestInfoiItem;

intnColumnCount =GetColumnCount();

for(intnColumn=0;nColumn<nColumnCount;++nColumn)

{

if(GetCellRect(nRow,nColumn,rect))

{

if(rectPtInRect(point))

{

return make_pair(nRow,nColumn);

}

}

}

}

return make_pair(-1,-1);

}

伪代码

for 0 to listgetitemcount

listgetitemtext()

getwindowtext(文本框控件ID)

如果上面两个得到的字符串相等 break

响应LBN_SELCHANGE消息void CIpSeeDlg::OnSelchangeList1()

{

int i=m_listGetCurSel();

CString str;

strFormat("%d",i);

MessageBox(str);

}

1、为界面添加一个List Control控件。\x0d\2、更改这个控件的view属性为Report\x0d\3、为这个控件添加一个控制型变量 假设为m_ctlList;\x0d\4、在界面的初始化函数OnInitDialog()函数中初始化这个控件主要是插入列表的头,主要调用\x0d\int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 );这个函数。\x0d\其中 nCol是列的索引,从0开始 ;lpszColumnHeading 列的名称 ;nFormat 文字的摆放方式;nWidth 宽的度度。\x0d\如:\x0d\m_ctlListInsertColumn(0,"姓名",LVCFMT_CENTER,60);//第一列,名称为姓名,文字居中显示,列的宽度为60像素\x0d\m_ctlListInsertColumn(1,"性别",LVCFMT_CENTER,60);//第二列,名称为性别,文字居中显示,列的宽度为60像素\x0d\\x0d\5在界面中添加一个“添加按钮”,在按钮的响应函数中向列表控件m_ctlList插入数据主要代码如下。\x0d\ UpdateData(TRUE);//将界面的数据更新到对应的变量中\x0d\int count=m_ctlListGetItemCount();//获取当前存在的数据总量\x0d\m_ctlListInsertItem(count,"张三");//插入一行\x0d\m_ctlListSetItemText(count,1,"男");//改变列2的显示文字

代码仅供参考:

定义两个字符串变量,并且声明获取计算机名称和IP的函数GetLocalHostIPName(CString &sLocalName, CString &sIpAddress)。

CString m_strLocalIP; //本机计算机IP  

    CString m_strLocalName; //本机计算机名  

    int GetLocalHostIPName(CString &sLocalName, CString &sIpAddress); //获取本机名称IP

定义函数GetHostName(CString &sLocalName, CString &sAddress)。

char name[128];

gethostname(name, 128);//获得主机名

以上就是关于MFC单文档怎么获取列表控件的行数全部的内容,包括:MFC单文档怎么获取列表控件的行数、MFC中列表控件怎么实现查找、MFC中如何获取列表框中被选 中的项的索引号,用的是哪个函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9827939.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存