做一个可编辑的表格控件
【实现内容】做一个可编辑的表格控件。
【使用控件】一个 MSFLEXGRID 表格控件,一个文本控件,一个下拉列表控件。
【实现原理】我喜欢把这个方法称为视觉假象。由于 MSFLEXGRID 控件本身是不支持直接编辑的。所
以需要结合文本控件或者下拉列表控件,使表格控件的运行效果如同可以直接编辑一样。
【实现步骤】
1.EE当鼠标点击表格控件的某一格时,首先判断该列的属性,是直接编辑呢,还是用下拉列表进行选择。
2.EE显示隐藏的文本控件或者下拉列表控件,显示的位置和大小与选中格的位置大小完全相同,这样可
以覆盖选中格
3.EE将选中格的内容填到文本控件或者下拉列表控件中
4.EE修改完毕后,将新的内容填到选中格中,同时隐藏文本控件或者下拉列表控件。
【主要程序段及说明】
变量定义:
CComboBox m_ChangeCombo;--下拉列表控件,初始时不可见
CEdit m_Change;---------------文本控件,初始时不可见
CSring m_sChange;----------------与文本控件关联的字符串
CMSFlexGrid m_FlexGrid;-----表格控件
程序段:
表格点击事件:选中某一格后,就要显示相应的文本控件或者列表控件
- 1
- 2
- 3
前往页