8.8.2 避免插入重复数据
使用列表框控件编写程序时,有时由于输入的文本信息过多,容易出现重复输入的情况。要避免这种情况发生,可以通过CListBox类的一些方法来实现。
1.GetText方法
GetText方法用于从列表框中获取一个字符串。
语法:
void GetText( int nIndex, CString& rString ) const;
|
nIndex:标识项目索引。
rString:用于接收返回的字符串。
2.GetCount方法
GetCount方法用于获取列表框中的项目数。
语法:
3.AddString方法
AddString方法用于向列表框中添加字符串。
语法:
int AddString( LPCTSTR lpszString ); |
其中,lpszString表示标识字符串指针。
例8.11 避免向列表框控件中插入重复数据。(实例位置:光盘\TM\sl\8\6)
步骤如下:
(1)创建一个基于对话框的应用程序,将对话框的Caption属性修改为"避免向列表框控件中插入重复数据"。
(2)向对话框中添加1个编辑框控件、1个列表框控件和1个按钮控件。
(3)处理"插入"按钮的单击事件,获取编辑框中输入的数据,判断数据是否存在,如果存在则弹出提示,反之插入数据。代码如下:
void CListBoxDlg::OnButtonadd() //"插入"按钮单击事件处理函数 { CString str; //声明字符串变量 m_Text.GetWindowText(str); //获取编辑框中的数据 int num = m_List.GetCount(); //获得列表框中的行数 for(int i=0;i{ CString Text; //声明字符串变量 m_List.GetText(i,Text); //获得指定行的数据 if(Text == str) //判断编辑框中的数据和列表框中的数据是否相等 { MessageBox("数据已存在!"); //相等时弹出消息框 return; } } m_List.AddString(str); //不相等时则插入数据 } |
实例的运行结果如图8.21所示。
|
图8.21 避免向列表框控 件中插入重复数据 |
【责任编辑:
夏书 TEL:(010)68476606】