一个优秀的列表控件msflxgrd.ocx - Microsoft FlexGrid Control

xingyun86 2023-7-9 1025

 Using the Flexgrid in VC++ - CodeProject

msflxgrd.ocx - Microsoft FlexGrid Control
  原先使用的是msflxgrd控件,但是使用过程中发现,Cell中的中文字符串在英文系统下显示“??”,查找资料发现该表格控件对Unicode的支持不够好。

  mshflxgd.ocx - Microsoft Hierarchical FlexGrid Control
  于是,换成使用增强版的mshflxgd控件。


  0、下载MSHFLXGD.OCX,并注册;

    Regsvr32 MSHFLXGD.OCX

  1、新建基于对话框的MFC应用程序,工程名为MsGrid,一路Next到底;

         

 2、去除默认的对话框界面控件,空白处右键“Insert ActiveX Control...”,选择Microsoft Hierarchical FlexGrid Control

3、拖动mshflxgd控件为合适大小,其上右键“Add Variable...”

 3、在OnInitDialog中输入代码     

m_flexGrid.put_Row(0);
m_flexGrid.put_Col(0);
m_flexGrid.put_Text(_T("测试"));

 编译运行:

       msflxgrd.ocx -   方法以Set    Get为前缀

  mshflxgd.ocx -  方法以put_   get_为前缀

  PS: 在测试过程中还发现了一个奇怪的现象,中文字符串水平躺着显示,不知是啥原因,初步断定与所在对话框父窗口的属性设置有关。


×
打赏作者
最新回复 (0)
查看全部
全部楼主
返回