请教一段代码,不明什么意思。帮忙解释一下

niuma5266 2003-10-17 06:04:13
Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
' Read saved property values
On Error Resume Next
Set UserControl.Font = PropBag.ReadProperty("Font", UserControl.Ambient.Font)
Caption = PropBag.ReadProperty("Caption", UserControl.Ambient.DisplayName)
Enabled = PropBag.ReadProperty("Enabled", True)
TextColor = PropBag.ReadProperty("TextColor", vbButtonText)
HoverColor = PropBag.ReadProperty("HoverColor", vbHighlight)
BackColor = PropBag.ReadProperty("BackColor", vbButtonFace)
End Sub
Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
' Save design-time property values
On Error Resume Next
PropBag.WriteProperty "Font", UserControl.Font, UserControl.Ambient.Font
PropBag.WriteProperty "Caption", mCaption, UserControl.Ambient.DisplayName
PropBag.WriteProperty "Enabled", mEnabled, True
PropBag.WriteProperty "TextColor", mTextColor, vbButtonText
PropBag.WriteProperty "HoverColor", mHoverColor, vbHighlight
PropBag.WriteProperty "BackColor", UserControl.BackColor, vbButtonFace
End Sub
...全文
54 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
orcale 2003-10-19
  • 打赏
  • 举报
回复
PropertyBag 对象
PropertyBag 对象包含跨越对象调用时需要保存和恢复的信息。
说明
通过 ReadProperties 事件和 WriteProperties 事件,可将 PropertyBag 对象传送到对象中来保存和恢复对象的状态。使用 PropertyBag 对象的方法,对象能够读写自身的属性。PropertyBag 对象的 ReadProperty 方法用来读取属性值,而 PropertyBag 对象的 WriteProperty 方法用来写属性值。属性值本身可以是一个对象;在这种情况下 PropertyBag 对象将试图保存它。
Ringfo 2003-10-18
  • 打赏
  • 举报
回复
'控件的属性读取过程
Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
' Read saved property values
On Error Resume Next
‘设置usercontrol的字体为读出来的Font属性
Set UserControl.Font = PropBag.ReadProperty("Font", UserControl.Ambient.Font)
'等等
.......
End Sub


WriteProperty 当然就是写属性包了
AresChen 2003-10-17
  • 打赏
  • 举报
回复
多去查查msdn,里面都有。
这段程序就是在控件或者对象中,readproperties中是将一些信息读入到属性当中,writeproperties事件里是将一些属性写到propertybag中。
propertybag对象,我个人认为是VB中比较容易被人忽视,但却挺有用的一个对象,其原理就是一个包,里面可以放任何东西。
比如,我当初设计过一个类,其中有几个collection,每个collection的item又是object,这些object中还可能会包含collection,那么如何保存这个对象中所记载的信息哪,并且能够在还原回来哪?我当时用的一个比较偷懒的办法就是直接用propertybag,然后以2进制形式在把这个包保存到数据库当中,下回直接读入就还原回一个完整的对象了。
建议你多看看msdn中有关propertybag方面的知识。
niuma5266 2003-10-17
  • 打赏
  • 举报
回复
up

1,485

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧