@H_502_1@1.在@H_502_1@MDI窗体上不能使用控件,需要用一个容器来放控件,比如使用@H_502_1@pictureBox控件来当做容器,这时真能体会到巨人的力量,这时我查到了另外一种方法。用一个窗体做容器@H_502_1@,把这些控件放到窗体上@H_502_1@,前提是要把窗体设置为子窗体@H_502_1@,把@H_502_1@borderstype 设置为@H_502_1@none,然后在@H_502_1@MDI窗体加载的时候@H_502_1@,子窗体也同时加载。地址连接。
@H_502_1@2.DataGrid和MSFleGrid的区别
VB 提供了@H_502_1@ 4 种网格控件
DBGrid 支持@H_502_1@Data控件设计时绑定,仅支持@H_502_1@DAO
DataGrid 支持@H_502_1@ADODC控件和记录集设计时@H_502_1@/运行时绑定@H_502_1@,支持@H_502_1@ADO
msFlexGrid 支持@H_502_1@Data控件设计时只读绑定,仅支持@H_502_1@DAO
msHFlexGrid 支持@H_502_1@ADODC控件和记录集设计时@H_502_1@/运行时只读绑定@H_502_1@,支持@H_502_1@ADO
前两个支持全屏编辑。同时,它们是面向记录集的,定位、操作都通过记录集。
后两个支持丰富的显示功能,可以合并单元格、设置行、列、单元格的颜色。同时,它们是面向单元格的,可以通过行、列号对显示数据进行访问。
就好了。
@H_502_1@4.如何给@H_502_1@MSFlexGrid1的列添加空值
当我们想给其中的列从数据库中赋值时,就可能会出现“无效使用NULL”的错误,这时我只需要跳过这条语句的赋值就可以了:
On Error Resume Next
@H_502_1@5.机房导出Excel时,出现“部件要求挂起”
巨人的力量真是伟大的,这样节省了好多的时间!这个错误是vb使用兼容性造成的。
vb属性——兼容性——以兼容模式运行这个程序,将勾去掉即可。
@H_502_1@6.导出Excel,出现“不是一个合法的控件名”
(@H_502_1@1)这时因为我们传递参数时,参数不正确造成的。我在调用时是这样赋值参数的
Call ExportToExcel(Me,MSFlexGrid1)@H_502_1@ 'Export@H_502_1@ToExcel是自定义函数的名字
第一个参数是窗体,它是一个对象,第二参数是一个字符串类型的数据,而我这里写的是控件的名称,它是一个字符串,跟对象有所不同,它需要用双引号括起来。改成如下,就可以正确调用了。
CallExportToExcel(Me,"MSFlexGrid1")
(@H_502_1@2)第二种解决办法:这样我们可以将这条语句改一下,不需要用到controls方法;不过前提是你要正确书写控件的名称。我是从MSFlexGrid导出数据的,使用了它的默认名称,所以我的语句为:with FormName.MSFlexGrid1 。这样做可以减少一个参数;但是需要控件的名字一致。