数据库字段:VB里面超长OLE数据库字段的操纵(2)来源: 发布时间:星期四, 2009年2月12日 浏览:104次 评论:0
orm_Load 事 件 ![]() ![]() ![]() ![]() ![]() 在Data1_Validate 事 件 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 当 系 统 执 行 了 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 下 面 给 出 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 变 量 说 明: Option Explicit Dim tbOLEObjects As Dyna ![]() Dim nRecordCount As Integer \'tbOLEObjects ![]() Dim nRecordNumber As Integer \'tbOLEObjects ![]() Dim bBusy As Interger \' 防 止 重 入 标 志 Dim bUpdated As Integer \'OLE 控 件 ![]() ![]() 下 面 ![]() ![]() ![]() ![]() ![]() Sub RefreshForm ![]() Dim eError As Integer NoRecord = False Data1.RecordSource = \"SELECT * from OwnFile order by File_ID\" Data1.Refresh Set tbOLEObjects = Data1.Record ![]() ![]() \' 给tbOLEObjects 赋 值 \' 下 面 这 两 条 语 句 是 必 须 ![]() ![]() ![]() tbOLEObjects.MoveLast tbOLEObjects.MoveFirst nRecordCount = tbOLEObjects.RecordCount \' 保 存tbOLEObjects ![]() nRecordNumber = 1 \' 使 记 录 ![]() ![]() \' 设 置 各 控 件 ![]() ![]() ![]() ![]() txtTitle.DataField = \"File_Title\" txtClass.DataField = \"File_Class\" txtFileID.DataField = \"File_ID\" txtKeyWord.DataField = \"File_KeyWord\" \' 将OLE 字 段File_Cont 中 ![]() eError = FieldToOLE(OLE1, tbOLEObjects(\"File_Cont\")) \' 将Data1 指 向 第 ![]() If Data1.Record ![]() ![]() End Sub 下 面 是 如 何 在Data1_Validate 事 件 中 加 入 对tbOLEObjects 操 作 代 码 ![]() ![]() Sub Data1_Validate(Action As Integer, Save As Integer) Dim eError As Integer Select Case Action Case 1 \'Data1 执 行MoveFirst If Not bBusy Then bBusy = True Screen.MousePo ![]() DoEvents If bUpdated Then \' 如 果OLE1 中 ![]() Call PutOLEObject \' 保 存OLE1 中 ![]() DoEvents bUpdated = False End If If nRecordNumber > 1 Then tbOLEObjects.MoveFirst \' 到Data1 所 指 向 ![]() nRecordNumber = 1 \' 修 改tbOLEObjects ![]() \' 取 出 当 前 记 录OLE 字 段 ![]() eError = FieldToOLE(OLE1, tbOLEObjects(\"File_Cont\")) DoEvents End If Screen.MousePo ![]() bBusy = False End If Case 2 \'Data1 执 行 了MovePrevious If Not bBusy Then \' 用 于 防 止 程 序 重 入 bBusy = True \' Screen.MousePo ![]() DoEvents If bUpdated Then \' 如 果OLE1 中 ![]() Call PutOLEObject \' 保 存OLE1 中 ![]() DoEvents bUpdated = False End If If nRecordNumber > 1 Then tbOLEObjects.MovePrevious \' 到Data1 所 指 向 ![]() nRecordNumber = nRecordNumber - 1 \' 修 改tbOLEObjects ![]() \' 取 出 当 前 记 录OLE 字 段 ![]() eError = FieldToOLE(OLE1, tbOLEObjects(\"File_Cont\")) DoEvents End If Screen.MousePo ![]() bBusy = False End If Case 3 \'MoveNext ...... Case 4 \'MoveLast ...... Case 5 \' 增 加 ![]() If Not bBusy Then bBusy = True Screen.MousePo ![]() DoEvents If bUpdated Then Call PutOLEObject \' 保 存 当 前OLE 控 件 中 ![]() DoEvents bUpdated = False End If \'执行tbOLEObjects.AddNew ![]() ![]() \'本例子中未给出这部分代码 ![]() ![]() ![]() Screen.MousePo ![]() bBusy = False End If Case 6 \' 更 新 数 据 库 If Save = True Then If MsgBox (\" 保 存 所 做 ![]() Action = 0: Save = False End If Case 7 \' 删 除 记 录 ![]() ![]() ![]() ...... Case 8 ...... Case 9 ...... Case 10 \' 关 闭 数 据 库 If Save = True Then If MsgBox (\" 关 闭 数 据 库 前, 保 存 所 做 ![]() <> YES Then Save = False End If End Select End Sub 下 面 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Sub Outline1_Click ![]() Dim stLName As String, stTmp$, eError% Dim stFName As String If Outline1.Indent(Outline1.ListIndex) = 2 Then stTmp$ = Outline1.List(Outline1.ListIndex) stLName = stGetToken$(stTmp$, \",\") \' 读 取 该 记 录 ![]() If nRecordCount > 1 Then tbOLEObjects.MoveFirst nRecordNumber = 1 \' 到 第 ![]() Do While Trim$(tbOLEObjects!File_ID) <> stLName \' 开 始 查 找 该 记 录 nRecordNumber = nRecordNumber + 1 tbOLEObjects.MoveNext Loop Data1.Record ![]() \'Data 控 件 也 要 到 该 记 录 eError = FieldToOLE(OLE1, tbOLEObjects(\"File_Cont\")) \' 取 出OLE 字 段 ![]() Outline1.SetFocus \' 将 焦 点 放 在Outline 控 件 上 ElseIf nRecordCount = 1 Then Data1.Record ![]() eError = FieldToOLE(OLE1, tbOLEObjects(\"File_Cont\")) Outline1.SetFocus End If End If End Sub 最 后 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 0
相关文章读者评论发表评论 |