在用CGridCtrl产生的一个单元格里面添加了一个下拉框,如何获取点击下拉框之后的那个内容

时间:2022-11-26 14:50:16
比如说这个下拉框有 00 、01 、02三个选项,
我怎么点击02之后,获取这个02?

7 个解决方案

#1


CString str;
GetLBText(GetCurSel(),str);

#2


有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

#3


引用 2 楼 zgl7903 的回复:
有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

不是获取下拉的Index,下拉的选项已经被我换成了字符串,我想获得这些字符串,楼上那位说的方法是获取字符串的,但是在GridCellCombo.cpp里面没找到这个函数

#4


引用 2 楼 zgl7903 的回复:
有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

在用CGridCtrl产生的一个单元格里面添加了一个下拉框,如何获取点击下拉框之后的那个内容
是这样的

#5


试试 CString strText = pCell->GetText();

#6


    CStringArray m_Strings;

// For setting the strings that will be displayed in the drop list
void CGridCellCombo::SetOptions(const CStringArray& ar)

    m_Strings.RemoveAll();
    for (int i = 0; i < ar.GetSize(); i++)
{
        m_Strings.Add(ar[i]);
}
}

写一个 
void CGridCellCombo::GetOptions(const CStringArray& ar)

#7


解决方法找到了
在CGridCellCombo.cpp 里面添加SeleChange()函数,然后在函数里面添加
CGridCell * pCell = (CGridCell *)m_pGrid.GetCell(Row,Col);
pCell->EndEdit();
其中m_pGrid、Row、Col我是在对应头文件里面添加的成员变量,然后再其它函数里面对他们赋值。
接着用GetItemText( iRo,iCo)或者GetCurSel()等得到的就是修改后所对应的数据了

#1


CString str;
GetLBText(GetCurSel(),str);

#2


有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

#3


引用 2 楼 zgl7903 的回复:
有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

不是获取下拉的Index,下拉的选项已经被我换成了字符串,我想获得这些字符串,楼上那位说的方法是获取字符串的,但是在GridCellCombo.cpp里面没找到这个函数

#4


引用 2 楼 zgl7903 的回复:
有点类似CComboBox

CGridCellCombo *pCombo = (CGridCellCombo *)pGrid->GetCell(nRow, nCol);
int iSel = pCombo->GetCurSel();

在用CGridCtrl产生的一个单元格里面添加了一个下拉框,如何获取点击下拉框之后的那个内容
是这样的

#5


试试 CString strText = pCell->GetText();

#6


    CStringArray m_Strings;

// For setting the strings that will be displayed in the drop list
void CGridCellCombo::SetOptions(const CStringArray& ar)

    m_Strings.RemoveAll();
    for (int i = 0; i < ar.GetSize(); i++)
{
        m_Strings.Add(ar[i]);
}
}

写一个 
void CGridCellCombo::GetOptions(const CStringArray& ar)

#7


解决方法找到了
在CGridCellCombo.cpp 里面添加SeleChange()函数,然后在函数里面添加
CGridCell * pCell = (CGridCell *)m_pGrid.GetCell(Row,Col);
pCell->EndEdit();
其中m_pGrid、Row、Col我是在对应头文件里面添加的成员变量,然后再其它函数里面对他们赋值。
接着用GetItemText( iRo,iCo)或者GetCurSel()等得到的就是修改后所对应的数据了