网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> PowerBuilder >> 文章正文
  如何实现数据的自动录入            【字体:
如何实现数据的自动录入
作者:佚名    文章来源:不详    点击数:    更新时间:2007-8-16    

用户录入数据时经常会遇到大量重复数据,即录入下一条记录的某个字段时,其值与上一条记录同字段的值相同。如果编些程序自动录入相同值会大大提高录入速度。
具体实现方法如下:
一、程序中主要用到的函数
1、FileOpen() 功能:以指定的读写模式打开指定的文件,同时返回文件的句柄。
2、FileWrite() 功能:从指定文件读取数据。
3、FileClose() 功能:关闭先前用FileOpen()函数打开的文件。
4、settext() 功能:得到当前行和列之上的编辑框中的值。
5、gettext() 功能:替换在DataWindow控件或DataStore对象的当前行列的编辑框控件中的文本。
6、send() 功能:向窗口发送指定的消息并立即执行相应的事件处理程序。
7、describe() 功能:返回DataWindow对象或Datastore对象中的其它对象的属性值。
以上函数在有关Pb的函数书中均可以找到,这里不再详述,但要注意后面两个函数的使用方法。
二、具体实现方法
1、建立window具体控件名称如图1所示。
2、定义实例变量数组 string is_value[] 和 integer if_File(存放打开文件的句柄)
string is_columncount
3、在window的Open事件中编写如下代码
int i
if_File = FileOpen("Sys.ini",LineMode!, Read!, LockRead!)
is_columncount = dw_input.Describe("DataWindow.Column.Count") //取得DataWindow对象的总列数
for i = 1 to integer(is_columncount)
FileRead(if_File, is_value[i])
next
FileClose(if_File)
dw_input.Scrolltorow(dw_input.rowcount()) //将光标设置到最后行列
dw_input.setcolumn(integer(is_columncount))
在window 的Close事件中编写如下代码
int i
if_File = FileOpen("Sys.ini",LineMode!, Write!, LockWrite!, Replace!)
for i = 1 to integer(is_columncount)
FileWrite(if_File, is_value[i])
next
FileClose(if_File)
4、给Datawindow control自定义一个回车键事件:
Event name: ue_keyenter Event ID: pbm_dwnprocessenter
5、在Datawindow control的ue_keyenter事件中写入以下代码
is_value[this.getcolumn()] = this.gettext()
Send(Handle(this),256,9,Long(0,0))
this.settext(is_value[this.getcolumn()])
return 1
在Datawindow control的constructor事件中写入以下代码
this.Settransobject(sqlca)
this.retrieve()
6、给cb_append自定义一个回车事件
Event name: ue_keydown Event ID: pbm_keydown
在cb_append的clicked事件中写入以下代码
dw_input.Setfocus()
dw_input.ScrollToRow(dw_input.InsertRow(0)) //追加一空记录并指向新记录
dw_input.SetColumn(1) //指向公寓名列
dw_input.Settext(is_value[1])
在cb_append的ue_pbm_keydown事件中写入以下代码
if keydown(keyenter!) then
this.Triggerevent(clicked!)
end if
※ 注意各个控件的tab order的顺序。
以上步骤只是简单的实现快速录入,如果遇到具体情况还应该做更详细的编码。

站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     在PB程序中实现ODBC数据…
     用PB5 设计 串口通讯程序
     如何用VC创建可在PB中调…
     PB连接Microsoft  SQL S…
     用PB编写多线程应用程序
  • Java Swing实现俄罗斯方块

  • 开发手记---JAVA数据库连接池

  • 解决JSP数据输入中文乱码问题

  • ava与数据库连接的四种方法

  • javabean+mysql数据库连接池

  • c++实现系统托盘图标

  • Ajax - javascript之实现…

  • 初学者,你应当如何学习C++以…

  • 汇编来实现OOP思想

  • 在C++实现C#中的属性(Proper…

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David