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); } } }
。。。。。。。待续。。。。。。。。。。。。

|