MS Flex Grid控件对于复杂的Cell内容表示就很困难了。在www.vchelp.net上有一个程序,是将一个列的cell作成了CheckBox。我们可以将Grid的一列的输入加入录入参照,就是这个列的内容只能来自于数据库,方法如下
实现两个消息影射:DoubleClick和KeyDown,
发生这些事件的时候,弹出一个对话框,在该对话框中定义一个Combox,其下拉内容来自与数据库中即可了。
void CPageComplete::OnDblClickMsflexgridCorp()
{
// TODO: Add your control notification handler code here
long nCurCol = m_CorpGrid.GetCol();
long nCurRow = m_CorpGrid.GetRow();
if(m_CorpGrid.GetCol() == 2){
CDlgSelCorpType dlgSelCorpType;
if(dlgSelCorpType.DoModal()==IDOK){
CString str = dlgSelCorpType.m_strSelCorpType;
m_CorpGrid.SetText(str);
}
}
}
void CPageComplete::OnKeyDownMsflexgridCorp(short FAR* KeyCode, short Shift)
{
// TODO: Add your control notification handler code here
long nCurCol = m_CorpGrid.GetCol();
long nCurRow = m_CorpGrid.GetRow();
if(m_CorpGrid.GetCol() == 2){
CDlgSelCorpType dlgSelCorpType;
if(dlgSelCorpType.DoModal()==IDOK){
CString str = dlgSelCorpType.m_strSelCorpType;
m_CorpGrid.SetText(str);
}
}
}
。。。。。。。待续。。。。。。。。。。。。