`
yidongkaifa
  • 浏览: 4069876 次
文章分类
社区版块
存档分类
最新评论

【远控编写04】客户端界面的设计和编写--列表中添加条目

 
阅读更多
1.CListCtrl InsertItem 插入条目 查看MSDN
              int InsertItem(
                         int nItem,              //插入哪一行
                         LPCTSTR lpszItem        //该行0列显示的字符
               );

              SetItemText         设置哪个列的字符
              BOOL SetItemText(
                          int nItem,                   //改动那个行
                          int nSubItem,                //该行中那个子列
                          LPCTSTR lpszText             //要设置的字符
              );

2.列表设计思路:
(1)服务端上线后要显示在列表中,这样有一个统一的函数来处理会使代码更加简洁。
(2)消息显示分为成功失败两种,还要在其中显示消息产生的时间,这样也应该有一个统一的函数来处理。

3.上线列表添加处理:

// add column into List Control
void CPCRemoteDlg::AddList(CString strIP, CString strAddr, CString strPCName, CString strOS, CString strCPU, CString strVideo, CString strPing)
{
	m_CList_Online.InsertItem(0,strIP);	//默认为0行  这样所有插入的新列都在最上面
    m_CList_Online.SetItemText(0,ONLINELIST_ADDR,strAddr);//设置列的显示字符   这里 ONLINELIST_ADDR等 为第二节课中的枚举类型 用这样的方法
	m_CList_Online.SetItemText(0,ONLINELIST_COMPUTER_NAME,strPCName); //解决问题会避免以后扩展时的冲突
	m_CList_Online.SetItemText(0,ONLINELIST_OS,strOS); 
	m_CList_Online.SetItemText(0,ONLINELIST_CPU,strCPU);
	m_CList_Online.SetItemText(0,ONLINELIST_VIDEO,strVideo);
	m_CList_Online.SetItemText(0,ONLINELIST_PING,strPing); 
}

4.添加日志消息的处理:

void CPCRemoteDlg::ShowMessage(bool bIsOK, CString strMsg)
{
	CString strIsOK,strTime;
	CTime t=CTime::GetCurrentTime();
	strTime=t.Format("%H:%H:%S");
	if(bIsOK)
	{
		strIsOK="执行成功";
	}else{
		strIsOK="执行失败";
	}

	m_CList_Message.InsertItem(0,strIsOK);
	m_CList_Message.SetItemText(0,1,strTime);
	m_CList_Message.SetItemText(0,2,strMsg);
}


5.添加伪上线,和日志的测试代码,所以要加入一个用于测试的函数:

// just is a test funtion
void CPCRemoteDlg::Test(void)
{
	AddList("192.168.0.1","本机局域网","Pinggle","Windows XP","2.0GHZ","有","12323");
	ShowMessage(true,"软件初始化成功...");
}


然后在OnInitDialog 中调用:Test();


6.点击时整个行都是选中状态
InitList():中加入代码:
m_CList_Online.SetExtendedStyle(LVS_EX_FULLROWSELECT);
m_CList_Message.SetExtendedStyle(LVS_EX_FULLROWSELECT);

7.效果截图:

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics