zoukankan      html  css  js  c++  java
  • 【转载】CCombobox使用大全

    一、如何添加/删除Combo Box内容

    1. 在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。

    2. 在程序初始化时动态添加

        如: //控件内容初始化

       CString strTemp;

    ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();//消除现有所有内容

        for(int i=1;i<=100;i++)

       {

           strTemp.Format("%d",i);

           ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp);

       }

    3. 下拉的时候添加

        如: CString strTemp;

        int iCount=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCount();//取得目前已经有的行数

        if(iCount<1)//防止重复多次添加

       {

           ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();

           for(int i=1;i<=100;i++)

          {

              strTemp.Format("%d",i);

              ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp);

           }

        }

    4. 删除

       DeleteString( UINT nIndex )//删除指定行,

    5. 插入

       InsertString( int nIndex, LPCTSTR lpszItem )//将行插入到指定位置

    6. 查找

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

       int SelectString( int nStartAfter, LPCTSTR lpszItem )//可以选中包含指定字符串的行

    二、如何控制Combo Box的下拉长度

    1. 首先要知道两点:一、那就是在设计界面里,点击一下Combo Box的下拉箭头,此时出现的调整框就是Combo Box的下拉调整框。

    2. 二、属性里有个 No integral height 钩选项,表示最大长度为设计长度,如果实际内容比设计长度多,就出现滚动条,少就以实际长度显示。

    三、选择其中的某行

    1. 选中:

    int iPos=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCurSel();//当前选中的行。

    2. 设置

    ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->SetCurSel(n)//设置第n行内容为显示的内容。

    四、取得Combo Box框内容

    1. 取当前内容

    ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetWindowText(strTemp);

    2. 取其他行内容

    ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetLBText(n,strTemp);

    四、获得焦点

    通常要判断控件是否获得了焦点,可以用GetFocus()函数

    例如:if(GetFocus()==GetDlgItem(IDC_EDIT_VALUE2))//判断焦点是否在编辑框IDC_EDIT_VALUE2内。

    但是combobox 的焦点不同,因为它是由edit和listbox两部分组成的

    所以获得焦点要用GetParent():if ((GetFocus()->GetParent())==GetDlgItem(IDC_COMBO_CF))

    http://blog.csdn.net/yu444/article/details/5223732

  • 相关阅读:
    poj 3068 Bridge Across Islands
    XidianOJ 1086 Flappy v8
    XidianOJ 1036 分配宝藏
    XidianOJ 1090 爬树的V8
    XidianOJ 1088 AK后的V8
    XidianOJ 1062 Black King Bar
    XidianOJ 1091 看Dota视频的V8
    XidianOJ 1098 突击数论前的xry111
    XidianOJ 1019 自然数的秘密
    XidianOJ 1109 Too Naive
  • 原文地址:https://www.cnblogs.com/iack/p/4004951.html
Copyright © 2011-2022 走看看