请高手执教:窗口信息如何保存

linfuyong 2003-01-09 05:13:40
如何把一个窗口中的信息:例如,复选框,单选框,文本等等修改的内容在下一次继续有效
...全文
27 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
twinking 2003-01-10
我觉得
如果批量很大的话
是否可以考虑一下
采用数据库来储存这些东西?
打开窗体的时候先打开数据库查找这些相关的信息
然后赋值给各个控件
不过速度应该慢很多了
回复
zmcpu 2003-01-10
可以利用 INI 文件和Windows95/98的注册数据库来保存,下面讲解如何使用 INI 文件来保存和读取内容。假设当前有 Text1、Text2、Text3三个文本框的内容需要保存,INI文件名为 ABC.INI。
  首先新建一个Module,然后,在此Module中说明 API 函数:
  Declare Function WritePrivateProfileString Lib ″ker nel32″ Alias ″WritePrivateProfileStringA″ (ByVal lpApplica tionName As String, ByVal lpKeyName As Any, ByVal lp String As Any, ByVal lpFileName As String) As Long
  Declare Function GetPrivateProfileString Lib ″kernel32″ Alias ″GetPrivateProfileStringA″ (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
  为了简化工作,最好定义好几个函数,给程序提供更简单的操作,首先定义一个用于输入的函数WriteOneString:
  Private Function WriteOneString(ByVal Section As String, ByVal Key As String, ByVal value As String) As Boolean
  Dim x As Long, buff As String * 128, I As Integer
  buff = value + Chr(0)
  x = WritePrivateProfileString(Section, Key, buff,
″ABC.INI″)
  WriteOneString = x
  End Function
  然后定义一个用于输出的函数 ReadOneString :
  Private Function ReadOneString(ByVal Section As String, ByVal Key As String) As String
  Dim x As Long, buff As String * 128, I As Integer
  x = GetPrivateProfileString(Section, Key, ″″, buff, 128, ″ABC.INI″)
  I = InStr(buff, Chr(0))
  ReadOneString = Trim(Left(buff, I - 1))
  End Function
  这时,你就可以在 Form 的 Load 和 UnLoad 事件里分别进行保存和读取操作。
  Private Sub Form_Load()
  Text1 = ReadOneString(″Option″,″Text1″)
  Text2 = ReadOneString(″Option″,″Text2″)
  Text3 = ReadOneString(″Option″,″Text3″)
  End Sub
  Private Sub Form_Unload(Cancel As Integer)
  Text1 = WriteOneString(″Option″,″Text1″,Text1)
  Text2 = WriteOneString(″Option″,″Text2″,Text2)
  Text3 = WriteOneString(″Option″,″Text3″,Text3)
  End Sub
回复
linfuyong 2003-01-10
http://www.xygu.com似乎打不开
回复
bu_wen 2003-01-09
同意楼上的。
回复
浩子 2003-01-09
你用VB的向导生成一个工程,里面就有内似的代码可以参考,保存到注册表中了,当然,那些只是对窗体的一些属性数据而已,不过,你加一点就是你要保存的了,下次运行时再读进来即可.
也可以使用INI文件.

http://www.xygu.com
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7451

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告