msflexgrid与data1进行绑定后,data1通过sql语句,查询一张数据库表中的所有内容.
这个没有什么问题...现在是想通过单击msflexgrid的第0行中的某个cell,然后再用SQL语句根据cell中的内容进行排序.但是问题便出现了:
因为通过select语句查询出来的结果,第0行的各个单元格所对应的内容刚好就是表中的各个字段值..
然而在程序运行时,发现第0行的内容都不可选!为此本人专门做了一个试验,情况如下:msflexgrid.row和msflexgrid.col分别表示当前cell的行号和列号,所以本人特意在msflexgrid控件的click事件中
写入如下代码(仅一行):
msgbox "msflexgrid.row=" & msflexgrid.row & ", msflexgrid.col" & msflexgrid.col按F5运行后,本人试图点击第0行第1列的cell时获取它相应的行号和列号,按理论上来说,当我点击第0行第1列的cell时,弹出的对应框的值应该为:msflexgrid.row=0, msflexgrid.row=1可是结果却是msflexgrid.row=1, msflexgrid.row=1通过多次实验得到一个结论:
只要是单击第0行的某个单元格时,显示的列号是正确的,而行号总是1!但这个结论对于我来说是件很郁闷的事情,因为我只是想针对第0行第x列的单击格进行相关事件的编码,以实现根据其内容进行排序的功能.高分相送,望各位大哥大姐不吝赐教!!!
这个没有什么问题...现在是想通过单击msflexgrid的第0行中的某个cell,然后再用SQL语句根据cell中的内容进行排序.但是问题便出现了:
因为通过select语句查询出来的结果,第0行的各个单元格所对应的内容刚好就是表中的各个字段值..
然而在程序运行时,发现第0行的内容都不可选!为此本人专门做了一个试验,情况如下:msflexgrid.row和msflexgrid.col分别表示当前cell的行号和列号,所以本人特意在msflexgrid控件的click事件中
写入如下代码(仅一行):
msgbox "msflexgrid.row=" & msflexgrid.row & ", msflexgrid.col" & msflexgrid.col按F5运行后,本人试图点击第0行第1列的cell时获取它相应的行号和列号,按理论上来说,当我点击第0行第1列的cell时,弹出的对应框的值应该为:msflexgrid.row=0, msflexgrid.row=1可是结果却是msflexgrid.row=1, msflexgrid.row=1通过多次实验得到一个结论:
只要是单击第0行的某个单元格时,显示的列号是正确的,而行号总是1!但这个结论对于我来说是件很郁闷的事情,因为我只是想针对第0行第x列的单击格进行相关事件的编码,以实现根据其内容进行排序的功能.高分相送,望各位大哥大姐不吝赐教!!!
修正为:因为通过select语句查询出来的结果,第0行的各个单元格所对应的内容刚好就是表中的各个字段名称..
你测试msflexgrid有问题,推荐你用spread控件,这样排序都不用写了,设置属性就可以
直接获取标头即可
Private Sub MSFlexGrid1_Click()
MsgBox MSFlexGrid1.TextMatrix(0, MSFlexGrid1.Col)
End Sub
第X行同理...但我只想单击列标头的那个单元格时进行事件代码的操作.
也就是说比如第1列标头为"用户名",下面就有五个用户名称了...
可是如果按照你的这个方法时,在单击任意一个用户的时候,都是显示的是列标头的内容.此"用户名"是处在第0行第1列的,我只想在鼠标单击或双击时进行五个用户名称的排序!!!
这位兄弟为什么说太浪费资源呢??检索数据库应该很快的啊.
我用msflexgrid的原因是因为它比较能够符合我的要求,当然还有其他要求(比如说单数行与偶数行分别用二种颜色做背景色等等)..
这种方法我也试过了...但是当fixedrows=0时,也就等于没有了列标头.这样检索出来的数据没有字段说明,看上去会很不直观,而且这样更加无法实现根据字段进行排序的功能了!!!
http://www.mingribook.com/