列表框的成员函数与使用用例

列表框的成员函数与使用用例:

通过ID操作对象

CListBox(列表框)控件

CListBox类常用成员

CListBox插入数据

CListBox删除数据

CListBox运用示例

 

 

一、CListBox类常用成员

 

CListBox::ResetContent//清空组合框内容

voidResetContent( );

 

CListBox::AddString//添加lpszString 至组合框尾部

intAddString( LPCTSTR lpszString );

 

CListBox::DeleteString//删除nIndex

intDeleteString( UINT nIndex );

 

CListBox::InsertString//nIndex行后,插入行

intInsertString( int nIndex, LPCTSTR lpszString );

 

CListBox::SelectString//可以选中包含指定字符串的行

intSelectString( int nStartAfter, LPCTSTR lpszString );

 

CListBox::FindString//可以在当前所有行中查找指定的字符传的位置,nStartAfter指明从那一行开始进行查找。 

intFindString( int nStartAfter, LPCTSTR lpszString ) const;

 

CListBox::GetCount//获取行数

intGetCount( ) const;

 

CListBox::GetCurSel//获取当前选中行的行号

intGetCurSel( ) const;

 

CListBox::SetCurSel(n)//设置第n行内容为显示的内容

intSetCurSel( int nSelect );

 

intCListBox::SetItemHeight( int nIndex, UINTcyItemHeight );//设置一个项的高度,注意:列表框具有

//LBS_OWNERDRAWVARIABLE风格才可以单独设置一个项的高度,否则是所有项的高度

//------------------------上述函数与CListBox::CComboBox::::几乎相同

 

intCListBox::GetText( int nIndex,CString &rString ) const;//根据索引获得项文本  类似CComboBox::GetLBText

 

 

 

二、代码示例

void CDialog_ListBoxTest::OnBnClickedButton1()

{

         // TODO: 在此添加控件通知处理程序代码

         CListBox*plstbox=(CListBox*)GetDlgItem(IDC_LIST1);

         plstbox->AddString(L"xxxxxxxx");

        

}

 

int CDialog_ListBoxTest::OnInitDialog(void)

{

         CDialog::OnInitDialog();

         CListBox*plstbox=(CListBox*)GetDlgItem(IDC_LIST1);

         plstbox->AddString(L"1111");

         plstbox->AddString(L"2222");

         plstbox->AddString(L"3333");

         return0;

}

 

void CDialog_ListBoxTest::OnBnClickedButton2()

{

         // TODO: 在此添加控件通知处理程序代码

         CListBox*plstbox=(CListBox*)GetDlgItem(IDC_LIST1);

         //plstbox->DeleteString(0); //删除指定行

         plstbox->DeleteString(plstbox->GetCurSel());

}

 

void CDialog_ListBoxTest::OnLbnDblclkList1()

{

         // TODO: 在此添加控件通知处理程序代码

         //

         CListBox*plstbox=(CListBox*)GetDlgItem(IDC_LIST1);

         CEdit* pedt=(CEdit*)GetDlgItem(IDC_EDIT1);

         WCHARws[256];

         plstbox->GetText(plstbox->GetCurSel(),ws); //获取选中文本存到ws

         //把文本送到编辑框里

         pedt->SetWindowText(ws);

   

}



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为函数编写测试用例时,应该考虑以下几个方面: 1. 边界条件:测试函数的边界条件,如最小值、最大值、空值、边界值等。这有助于确保函数在极端情况下也能正常工作。 2. 正常情况:测试函数的正常输入情况,以确保函数在符合预期的情况下能够正常工作。 3. 异常情况:测试函数的异常输入情况,如非法输入、无效参数等,以确保函数能够适当地处理这些情况。 4. 性能测试:测试函数在大规模数据集下的性能表现,以确保函数在实际使用场景下能够快速高效地运行。 例如,对于一个名为 `calculate_average` 的函数,它接受一个列表作为输入,并返回列表中所有数字的平均值。以下是为该函数编写测试用例的一个例子: ```python import unittest def calculate_average(numbers): if not numbers: return 0 return sum(numbers) / len(numbers) class TestCalculateAverage(unittest.TestCase): def test_empty_list(self): self.assertEqual(calculate_average([]), 0) def test_single_number(self): self.assertEqual(calculate_average([5]), 5) def test_multiple_numbers(self): self.assertEqual(calculate_average([1, 2, 3, 4, 5]), 3) def test_non_numeric_input(self): with self.assertRaises(TypeError): calculate_average(['a', 'b', 'c']) def test_performance(self): numbers = [i for i in range(1000000)] self.assertAlmostEqual(calculate_average(numbers), 499999.5, delta=0.1) if __name__ == '__main__': unittest.main() ``` 这个例子包含了五个测试用例,每个测试用例都测试不同的输入情况。例如,`test_empty_list` 测试函数对于空列表的输入是否返回 0。`test_non_numeric_input` 测试函数对于非数字输入是否引发 `TypeError` 异常。`test_performance` 测试函数在处理大规模数据集时的性能表现。每个测试用例使用 `assertEqual` 或 `assertRaises` 方法来检查函数的实际输出是否符合预期输出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值