| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1157 人关注过本帖
标题:3704 对象关闭时,不充许新的操作
取消只看楼主 加入收藏
hsbwp1314
Rank: 2
来 自:湖南长沙
等 级:论坛游民
帖 子:88
专家分:25
注 册:2008-12-1
结帖率:53.85%
收藏
 问题点数:0 回复次数:2 
3704 对象关闭时,不充许新的操作
1、在MSFlexGrid1列表中单右键,弹出“修改设备信息”,选择“修改设备信息”
 修改设备信息代码:
Private Sub Change_Equ_Click()
flag = 2
   If FrmResult.MSFlexGrid1.Row > 0 Then
     gSQL = " select * from EquInfo where EqID ='" & Trim(FrmResult.MSFlexGrid1.TextMatrix(FrmResult.MSFlexGrid1.Row, 6)) & "'"
     Re_Equ.Show
     Re_Equ.ZOrder 0
   Else
     MsgBox "目前没有设备信息,请先添加设备信息!", vbOKOnly + vbExclamation, "警告"
     flag = 1
     FrmStuff_info.Show
  End If
  
End Sub
2 、第二步应该弹出要修改的设备信息,结果总是提示:3704 对象关闭时,不充许新的操作。
  Private Sub Form_Load()
    Dim rs As New ADODB.Recordset
    Dim sql As String
    Dim init() As String
    Dim addNewRecord() As String
    Bankname.ListIndex = 0
    'Equ_Type.ListIndex = 0
    'Equ_Dep.ListIndex = 0
    'Equ_Name.ListIndex = 0
    Set rs = TransactSQL(gSQL)
    If rs.EOF = False Then    ***** 提示总是在这个地方*****
      With rs
         Me.Equ_Num = rs(0)
         Me.Bankname = rs(1)
         Me.Equ_Type = rs(2)
         Me.Equ_Name = rs(3)
         Me.Equ_Logo = rs(4)
         Me.Equ_Mode = rs(5)
         Me.Equ_ID = rs(6)
         Me.Equ_ByTm = rs(7)
         Me.Equ_Time = rs(8)
         Me.Equ_Dep = rs(9)
         Me.Equ_Val = rs(10)
         Me.Equ_Rem = rs(11)
         'rs.Close
      End With
   ' rs.Close
           Me.Equ_Type.Enabled = False
           Me.Equ_Num.Enabled = False
           Me.Equ_Name.Enabled = False
           Me.Equ_Logo.Enabled = False
           Me.Equ_Mode.Enabled = False
           Me.Equ_ID.Enabled = False
           Me.Equ_ByTm.Enabled = False
           Me.Equ_Dep.Enabled = False
           Me.Equ_Val.Enabled = False
        ' rs.Close
     End If
   rs.Close
End Sub


3、我的模块代码
 Public gUserName As String         '保存用户名称
Public gSQL As String              '保存SQL
Public flag As String              '添加和修改标志
Public iflag As Integer            '数据库是否打开标志

Public Function TransactSQL(ByVal sql As String) As ADODB.Recordset
  Dim con As ADODB.Connection
  Dim rs As ADODB.Recordset
  Dim srtConnection As String
  Dim strArray() As String
  Set con = New ADODB.Connection
  Set rs = New ADODB.Recordset
  On Error GoTo TransactSQL_Error
      strConnection = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\Equ.mdb"
      strArray = Split(sql)
      con.Open strConnection
      If StrComp(UCase$(strArray(0)), "select", vbTextCompare) = 0 Then
         rs.Open Trim$(sql), con, adOpenKeyset, adLockOptimistic
         Set TransactSQL = rs
         iflag = 1
     Else
       con.Execute sql
       iflag = 1
     End If
TransactSQL_Exit:
    Set rs = Nothing
    Set con = Nothing
    Exit Function
TransactSQL_Error:
  MsgBox "查询错误11:" & Err.Description
  iflag = 2
  Resume TransactSQL_Exit
  
End Function
Public Sub TabToEnter(Key As Integer)
 If Key = 13 Then
    sendkdys "{TAB}"
 End If
 
End Sub
Sub main()
  Dim fLogin As New FrmLogin
  fLogin.Show
  
End Sub

请高手指点,请问是不是我数据库联接不对,我能正常的登陆,查询等,但是要是数据库里没有东西,再查询的话也报这个错,当然位置不是在这里
全部内容.rar (73.85 KB)
我把我的代码传上来了,请大家帮个忙。

[ 本帖最后由 hsbwp1314 于 2010-10-11 09:20 编辑 ]
搜索更多相关主题的帖子: 对象 
2010-10-08 22:38
hsbwp1314
Rank: 2
来 自:湖南长沙
等 级:论坛游民
帖 子:88
专家分:25
注 册:2008-12-1
收藏
得分:0 
难到都要给钱才能回答吗?我刚注册目前没有钱,请高手们帮忙看下
2010-10-11 09:13
hsbwp1314
Rank: 2
来 自:湖南长沙
等 级:论坛游民
帖 子:88
专家分:25
注 册:2008-12-1
收藏
得分:0 
谢谢!请问下,我加载Re_Equ这个窗体时,怎么老提示:下标越界,接下去又会提示:对象关闭,不充许操作。


我想把我查询出来的内容进行打印。要怎么操作,有人有相关的系统参考吗?
2010-10-12 22:09
快速回复:3704 对象关闭时,不充许新的操作
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017093 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved