⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 45.txt

📁 VB文章集(含API、窗口、数据库、多媒体、系统、文件、等等)
💻 TXT
📖 第 1 页 / 共 2 页
字号:


rollback 


data1.refresh 


end if 


errhandler: 


select case err 


case 0 


response = 0 


case else 


msgbox (error) 


exit sub 


end select 


end sub 


private sub form_load() 


’ 在 窗 体 装 入 时, 网 格 中 的 数 据 不 可 添 加, 修 改 


dbgrid1.allowaddnew = false 


dbgrid1.allowupdate = false 


end sub 


private sub form_resize() 


on error resume next 


’ 当 窗 体 调 整 时 会 调 整 网 格 


dbgrid1.height = me.scaleheight - data1.height - cmd 删 除.height - 30 


end sub 


在工程中添加一个窗体,在窗体上画6个标签,1个命令按钮(标题为“ 确认”,名称为cmd 确认),3个文本框和1个组合框。 


在窗体的声明部份输入以下代码: 


’ 声 明 窗 体 层 变 量 


dim rodbs as database 


dim strdb as string, strrodb as string, strcn as string, strtdf as string 


dim linktdfname as string 


编 写 如 下 事 件 过 程: 


private sub cmd 确 认_click() 



on error goto errhandler: 


strdb = text2.text 


’ 本 地 数 据 库 名 及 路 径 


linktdfname = text3.text 


’ 本 地 数 据 库 中 新 建 的 链 接 远 程 表 的 表 名 


strcn = strrodb ’ 连 接 字 符 串 


strtdf = combo1.text ’ 指 定 远 程 数 据 库 中 要 访 问 的 表 


’ 调 用linktable 过 程 


call linktable(strdb, strrodb, strcn, strtdf, linktdfname) 


’ 调 用rst_display 过 程 


call rst_display(strdb, linktdfname, form1) 


form2.hide 


form1.show 


form1.caption = " 远 程 数 据:" + strcn + "-" + strtdf 


’ 显 示“ 添 加”,“ 删 除”,“ 修 改” 控 件 


form1.cmdadd.visible = true 


form1.cmddel.visible = true 


form1.cmdmodify.visible = true 


errhandler: 


select case err 


case 0 


response = 0 


case else 


msgbox (error + vbr + " 重 新 输 入") 


exit sub 


end select 


end sub 


private sub combo1_gotfocus() 


strrodb = text1.text ’ 指 定 远 程 数 据 库 名 及 路 径 


set rodbs = opendatabase(strrodb) ’ 打 开 远 程 数 据 库 


’ 删 除combo1 中 的 内 容 


if combo1.listcount >= 1 then 


for i = combo1.listcount - 1 to 0 step -1 


combo1.removeitem i 


next i 


end if 


’ 把 数 据 库 中 的 表 名 加 到combo1 中 


for i = 0 to rodbs.tabledefs.count - 1 


combo1.additem rodbs.tabledefs(i).name 


next i 


end sub 

private sub cmdend_click() 


end ’ 结 束 应 用 程 序 


end sub 



private sub cmdmodify_click() 


dbgrid1.allowupdate = true ’ 允 许 修 改 


end sub 



privatev sub cmd 链 接_click() 


form1.hide 


form2.show 


end sub 



private sub dbgrid1_aftercolupdate(byval colindex as integer) 


’ 数 据 修 改 后 触 发 该 事 件 


on error goto err1 


data1.refresh 


err1: 


select case err 


case 0 


response = 0 


case else 


exit sub 


end select 


end sub 



private sub dbgrid1_beforecolupdate 


(byval colindex as integer, oldvalue as variant, cancel as integer) 


’ 数 据 修 改 前 触 发 该 事 件 


on error goto errhandler: 


begintrans 


if msgbox(" 确 实 要 修 改 


这 一 内 容 ?", vbquestion + vbyesno) = vbyes then 


committrans 


else 


rollback 


data1.refresh 


end if 


errhandler: 


select case err 


case 0 


response = 0 


case else 


msgbox (error) 


exit sub 


end select 


end sub 


private sub form_load() 


’ 在 窗 体 装 入 时, 网 格 中 的 数 据 不 可 添 加, 修 改 


dbgrid1.allowaddnew = false 


dbgrid1.allowupdate = false 


end sub 


private sub form_resize() 


on error resume next 


’ 当 窗 体 调 整 时 会 调 整 网 格 


dbgrid1.height = me.scaleheight - data1.height - cmd 删 除.height - 30 


end sub 


在工程中添加一个窗体,在窗体上画6个标签,1个命令按钮(标题为“ 确认”,名称为cmd 确认),3个文本框和1个组合框。 


在窗体的声明部份输入以下代码: 


’ 声 明 窗 体 层 变 量 


dim rodbs as database 


dim strdb as string, strrodb as string, strcn as string, strtdf as string 


dim linktdfname as string 


编 写 如 下 事 件 过 程: 


private sub cmd 确 认_click() 



on error goto errhandler: 


strdb = text2.text 


’ 本 地 数 据 库 名 及 路 径 


linktdfname = text3.text 


’ 本 地 数 据 库 中 新 建 的 链 接 远 程 表 的 表 名 


strcn = strrodb ’ 连 接 字 符 串 


strtdf = combo1.text ’ 指 定 远 程 数 据 库 中 要 访 问 的 表 


’ 调 用linktable 过 程 


call linktable(strdb, strrodb, strcn, strtdf, linktdfname) 


’ 调 用rst_display 过 程 


call rst_display(strdb, linktdfname, form1) 


form2.hide 


form1.show 


form1.caption = " 远 程 数 据:" + strcn + "-" + strtdf 


’ 显 示“ 添 加”,“ 删 除”,“ 修 改” 控 件 


form1.cmdadd.visible = true 


form1.cmddel.visible = true 


form1.cmdmodify.visible = true 


errhandler: 


select case err 


case 0 


response = 0 


case else 


msgbox (error + vbr + " 重 新 输 入") 


exit sub 


end select 


end sub 


private sub combo1_gotfocus() 


strrodb = text1.text ’ 指 定 远 程 数 据 库 名 及 路 径 


set rodbs = opendatabase(strrodb) ’ 打 开 远 程 数 据 库 


’ 删 除combo1 中 的 内 容 


if combo1.listcount >= 1 then 


for i = combo1.listcount - 1 to 0 step -1 


combo1.removeitem i 


next i 


end if 


’ 把 数 据 库 中 的 表 名 加 到combo1 中 


for i = 0 to rodbs.tabledefs.count - 1 


combo1.additem rodbs.tabledefs(i).name 


next i 


end sub 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -