最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

MFC做表格的控件

来源:动视网 责编:小OO 时间:2024-12-02 02:19:18
文档

MFC做表格的控件

接下来,程序会显示或隐藏相应的文本控件或下拉列表控件,位置和大小与选中的格子完全一致,以覆盖选中的格子。程序会将选中的格子的内容填充到文本控件或下拉列表控件中。用户修改完毕后,新的内容会填充回选中的格子,并隐藏文本控件或下拉列表控件。具体实现时,可以通过变量定义来初始化这些控件,如CComboBox m_ChangeCombo、CEdit m_Change等。此外,还需要定义一个字符串变量m_sChange与文本控件关联,以及CMSFlexGrid m_FlexGrid作为表格控件。
推荐度:
导读接下来,程序会显示或隐藏相应的文本控件或下拉列表控件,位置和大小与选中的格子完全一致,以覆盖选中的格子。程序会将选中的格子的内容填充到文本控件或下拉列表控件中。用户修改完毕后,新的内容会填充回选中的格子,并隐藏文本控件或下拉列表控件。具体实现时,可以通过变量定义来初始化这些控件,如CComboBox m_ChangeCombo、CEdit m_Change等。此外,还需要定义一个字符串变量m_sChange与文本控件关联,以及CMSFlexGrid m_FlexGrid作为表格控件。


Microsoft flexGrid控件在表格控件中应用广泛。在开发过程中,需要根据具体情况设置控件的行为。当用户点击表格中的某一格时,首先判断该列的属性,决定是直接编辑还是通过下拉列表进行选择。

接下来,程序会显示或隐藏相应的文本控件或下拉列表控件,位置和大小与选中的格子完全一致,以覆盖选中的格子。程序会将选中的格子的内容填充到文本控件或下拉列表控件中。用户修改完毕后,新的内容会填充回选中的格子,并隐藏文本控件或下拉列表控件。

具体实现时,可以通过变量定义来初始化这些控件,如CComboBox m_ChangeCombo、CEdit m_Change等。此外,还需要定义一个字符串变量m_sChange与文本控件关联,以及CMSFlexGrid m_FlexGrid作为表格控件。

在表格点击事件中,首先获取用户点击的行号和列号。若点击区域超过表格的最大行号或标题行,则返回。接着,获取表格控件的窗口矩形,并将其转换为客户区矩形。随后,将缇(twips)单位转换为像素单位,计算选中格的左上角坐标和尺寸,形成选中格所在的矩形区域。最后,根据列属性决定显示文本控件或下拉列表控件,并填充选中格的内容。

当用户编辑文本控件后,按下回车键会将新的文本信息填充回选中的格子。同样地,当用户编辑下拉列表控件后,新的信息也会填充回选中的格子。

整个程序结构较为简单,但通过灵活使用文本控件和下拉列表控件,可以满足不同列的不同信息需求。如果表格中列较多,属性各不相同,可以尝试使用更复杂的控件来编辑信息。此外,还可以同时创建多个文本控件和下拉列表控件,以对应不同列的不同信息要求。

虽然当前有许多类似的应用实例,但在开发此程序时,笔者并未参考现有资料。因此,可能在方法上并不一定是最简单的,但确实效果不错,应对一般情况是没有问题的。如果对此有疑问或有新的想法,可以与笔者讨论,联系邮箱:happyparrot@126.com。

文档

MFC做表格的控件

接下来,程序会显示或隐藏相应的文本控件或下拉列表控件,位置和大小与选中的格子完全一致,以覆盖选中的格子。程序会将选中的格子的内容填充到文本控件或下拉列表控件中。用户修改完毕后,新的内容会填充回选中的格子,并隐藏文本控件或下拉列表控件。具体实现时,可以通过变量定义来初始化这些控件,如CComboBox m_ChangeCombo、CEdit m_Change等。此外,还需要定义一个字符串变量m_sChange与文本控件关联,以及CMSFlexGrid m_FlexGrid作为表格控件。
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top