如何提高动态创建控件的速度。比如控件如果超过5000个怎样才能提高创建的速度高分求解!!!请高手赐教!!!!

解决方案 »

  1.   

    如果可能,先把要动态加载的控件做成ocx,在需要加载时,调用ocx即可
      

  2.   

    mshflexgrid+text是一个可行的方案
    从mshflexgrid获取选中的格子
    动态创建text放在格子上
    剩下的处理不用说了吧?
      

  3.   

    //我想在窗体上画上网格,用的是动态创建控件来画,还要有标签,能点击标签可以修改窗体上的内容,还要有放大缩小,该怎么做?如果我做这个项目的话,我会选择用绘图语句直接画,至于放大缩小,看你的要求了,要求不高的话,直接用PaintPicture即可 至于 标签,还有事件的响应,可以通过计算鼠标的位置,然后进行事件的处理,当然,用现成的网格控件也是个不错的选择
      

  4.   

    建议用 VSFlexGrid 来代替
      

  5.   

    使用MSFLEXGRID控件可以做到非常近似的模拟EXCEL,如果搂主想要的就是EXCEL哪种效果的话。
      

  6.   

    效果如下:
      L1    L2    L3    L4    L5    L6    L7    L8    L9
      ┌──┬──┬──┬──┬──┬──┬──┬──┐
      │L10 │L11 │L12 │L13 │L14 │L15 │L16 │L17 │
      ├──┼──┼──┼──┼──┼──┼──┼──┤
      │L18 │L19 │L20 │L21 │L22 │L23 │L24 │L25 │
      ├──┼──┼──┼──┼──┼──┼──┼──┤
      │L26 │L27 │L28 │L29 │L30 │L31 │L32 │L33 │
      ├──┼──┼──┼──┼──┼──┼──┼──┤
      │L34 │L35 │L36 │L37 │L38 │L39 │L40 │L41 │
      └──┴──┴──┴──┴──┴──┴──┴──┘
    L1~~L41 可以接受鼠标单击事件,可以编辑内容。
    不知道这样的效果能不能实现。
      

  7.   

    我看过msdn中的一个例子,用mshflexgrid+1个text控件实现用户输入的功能。
    因实际用户不可能一次操作多个单元格,所以只用一个text来改变它的xy坐标及visible的值实现的。如有用你可以看看,我在MSDN只搜索mshflexgrid,选第二个主题就是了
      

  8.   

    前段时间刚好开发了一个这样的控件实现的功能除了你的之外,还能在网格上叠加半透明的曲线图,点击网格内的图标,有单击,双击,mousemove等事件可以左右上下移动,放大缩小网格网格内可以是文字或图片不过还有很多不完善的地方
    有需要加我Q:52437355
      

  9.   

    "个别需求",你是否仔细研究了各位给你的建议呢?
    of123、mqmmx(魂之结界) 、fxy_2002(阿勇)、rainstormmaster(暴风雨 v2.0) 这些方案都是可行的。
    如果想要少写代码,可以选择of123的方案啊!
      

  10.   

    上面的方案我都看过了,因为我在实际中行不通,所以还要继续寻找方案of123的方案:要的效果就是在整个屏幕中显示。
    mqmmx(魂之结界)的方案:mshflexgrid+1个text控件实现用户输入的功能,只是解决了坐标点的输入,而方格的四个角的坐标点没法显示。
    fxy_2002(阿勇)的方案:要的效果就是在整个屏幕中显示
    rainstormmaster(暴风雨 v2.0)的方案:该方案正在考虑如何实施。至于控件嘛,不知道用什么好。再顶.....................
      

  11.   

    使用控件的想法已经放弃,现在正在考虑rainstormmaster(暴风雨 v2.0)的方案如何实施。暂定方案:用绘图语句直接画,通过计算鼠标的位置处理坐标点事件的响应。
        数据保存用什么方法好呢???还要考虑数据调入和保存的速度问题请大家指点。