Skip to content

WaynesButtonState 类 ​

描述 WaynesButton 单个视觉状态的四个样式对象组合——角、背景填充、边框和文本渲染。每个按钮有四个并行实例,分别通过 NormalState、HoverState、FocusedState 和 PressedState 访问;按钮在每次重绘时根据鼠标/焦点状态选择一个。

新构造的 WaynesButtonState 对象预设 BackgroundFill 为纯中蓝色,四个角为 15 像素曲线。按状态覆盖以使按钮在不同状态下呈现不同外观。

该类型本身为 Private Class——实例只能通过 WaynesButton.…State 属性访问,无法在包外声明 WaynesButtonState 类型的变量。

vb
With btnGo.NormalState
    .BackgroundFill.ColorPoints.SetSolidColor vbBlue
    .TextRendering.Fill.ColorPoints.SetSolidColor vbWhite
End With

With btnGo.HoverState
    .BackgroundFill.SetSimplePattern vbBlue, &HE0E0FF, _
            Pattern:=tbGradientNorthToSouth
    .Borders.SetSimpleBorder StrokeSize:=2, ColorRGB:=vbBlue
End With

属性 ​

BackgroundFill ​

绘制按钮背景的 Fill。

Borders ​

绘制按钮边框笔触的 Borders。

Corners ​

控制逐角形状和半径的 Corners。

TextRendering ​

控制按钮 Caption 绘制方式的 TextRendering。

方法 ​

InitializeDefaults ​

将状态对象重置为包的默认值——纯中蓝色 BackgroundFill 和 15 像素曲线角。如果未加载序列化数据,则在父按钮首次初始化时自动调用。

语法:object.InitializeDefaults

事件 ​

OnChanged ​

四个包含的样式对象中任一个触发其自身的 OnChanged 时触发。父 WaynesButton 监听此事件并请求重绘。

twinBASIC及其LOGO版权为作者"韦恩"所有