目录
(1)使用API函数:SetParent,在模块中声明这个函数,声明代码:
二.工程-引用里面没有Microsoft Excel 14.0 Object Library 问题
(2)找到office文件,文件名输入excel.exe,点击打开,引用添加完成。这一步的前提是:电脑必须安装了0ffice(wpsOfiice不能使用)。
站在巨人的肩膀上(通过师哥师姐的博客),遇到的问题都迎刃而解,太棒了!
一.子窗体被覆盖问题
(1)使用API函数:SetParent,在模块中声明这个函数,声明代码:
Public Declare Function SetParent Lib "user32" (ByVal hWndChild As Long,
ByVal hWndNewParent As Long) As Long
(2)在MDIform窗体中的窗体点击事件中写入:
例:Private Sub StuDemCash_Click()
frmStuDemCash.Show '学生查看余额
SetParent frmStuDemCash.hWnd, Picture1.hWnd
frmStuDemCash.Width = 10000
frmStuDemCash.Height = 8000
End Sub
这样就可以正常显示子窗体了,具体说明请看:子窗体被覆盖问题
二.工程-引用里面没有Microsoft Excel 14.0 Object Library 问题
(1)打开工程-引用,点击浏览
(2)找到office文件,文件名输入excel.exe,点击打开,引用添加完成。这一步的前提是:电脑必须安装了0ffice(wpsOfiice不能使用)。
这样该问题便解决了,具体说明请看:VB6导出Excel
三.实时错误381——下标越界
详情如下:该问题是MHSFlexGrid控件的问题,问题出在了哪里??下标越界——顾名思义就是溢出问题。
解决这个问题,一步即可。打开该控件的属性,修改它的行或列即可。
四.数据库中上下机信息不全问题
在做上下机的时候,发现了一个很大的问题,那就是上机信息可以记录,下机的信息没有反应到数据库里面。
如何解决此问题?
1.想主键。
当你的主键只有卡号的时候,他能不能只通过卡号反应到你数据库中呢?
答案是不能,因为你数据库中下机的信息有很多,同一个卡号可能有多个上下机记录,怎么只能通过卡号来确定你的下机呢。
2.主键+上机时间+上机日期。
利用主键+上机时间+上机日期行不?
答案:不一定,因为这个要看你的具体代码。
就我而言,这种方法不太好,因为VB执行语句过程中有时间问题,他不可能通过一个时间点把整个语句执行,他只会一条一条的执行。所以一定会有时间延误。
3.我们把主键换成卡号+状态。
利用卡号加状态就可以了。
五.多步OLE DB操作产生错误
原因:这个错误我一开始还真的不明白是为什么,多亏了巨人,让我清楚了产生错误的原因。之所以会出现这个错误,是因为我们在登陆成功之后,会在数据库中记录数据,其中有一个属性(computer)就是记录自己电脑的名称,字段类型为char(10),如果自己的电脑名称太长的话就会出现这个错误。
解决方法:1.把自己的电脑名称改短点。2.改数据库中所有表中的computer字段类型。