菜鸟提问,希望大侠解答。1.   ehlib中的grideh怎样使列宽固定。 and  2.怎样排序。急~~~~~~在线

解决方案 »

  1.   

    opertion dbcolresize := false;order by
      

  2.   

    我有源代码。先把思想告诉你。
    排序 : 点击列头时,把这个列头所对的Query中的FieldName取出。
    然后判断当前Grid的第一行和最后一行谁大,然后就重新构造所连的Query的SQL语句。固定大小 :要建一个表,字段为使用者(不同的用户打开时可以自己规定大小),
    Grid名称,Form名称,字段名称,字段宽度。
    当他调整完所有的宽度并按确定时,你把这些参数全部都保存到数据库中。其中字段名称是Grid显示列中所对应的Query中这个字段的DisplayName.每个字段名称用一个特殊符号隔开(这样到时可以分解字段),宽度一样。
    然后在用户打开这个界面的时候,你先看数据库中当前这个Form的Grid有没有记录,如果有的话,就把字段名称这个记录分解成一个一个的字段,宽度也一样。这 
    样就可以对Grid进行重新构造了。
    如果你要源代码的话我可以发给你,但是要先给我加分哦!
      

  3.   

    能不能不更改数据库的结构,而直接固定列大小?(ACCESS2000)
    表头排序我指的是直接在GRIDEH是属性中设置,有没有办法?谢谢
      

  4.   

    你说的都是要写代码的,不能在属性里直接设置,固定列宽的话你首先要设置AutoFitColWidths属性为False,这样,你设计时是什么列宽,运行的时候也一样,更好的做法是把列宽存在数据库、INI文件或者注册表中,我的程序就是这样的,动态地让用户随便自己调整列宽,在菜单里选择“保存列宽”,下次用户打开程序时就是他所设置的列宽,这样,每个用户都有自己的个性化设置。至于排序,我在http://expert.csdn.net/Expert/TopicView2.asp?id=944798&datebasetype=now帖子里已经说过了,不再重复。