8.2.OrangeUI控件使用说明(单选框控件RadioButton)(示例2 颜色单选框)

讲解一下颜色单选框RadioButton的设置:

 

拖一个RadioButton到窗体上,

设置它的ComponentTypeName为Color,

它的ComponentTypeUseKind为dtukName,

表示使用颜色类型的单选框,

 

先讲解SelfOwnMaterial中如下两个素材属性,

DrawCheckRectParam:勾选框的矩形绘制参数

DrawCheckStateParam:勾勾的矩形绘制参数

IsAutoPosition:是否自动排列勾选框和标题的位置,要打上勾

 

 

先设置勾选框,

把DrawCheckParam.BorderColor设置为Lightgray,

把DrawCheckParam.BorderWidth设置2,

表示在没有勾选的状态下,显示一个边框为灰色、粗细为2的矩形,

如下图所示:

接下来设置勾选状态下的效果,

我们把RadioButton.Properties.Checked设置为True,

当Checked为True时,

RadioButton.SelfOwnMaterial中的所有Param就启用它们的PushedEffect,

所以,要设置勾选状态下的勾选框的边框颜色,

把DrawCheckRectParam.DrawEffectSetting.PushedEffect.BorderColor.Color设置为Orangered,

再勾选DrawCheckRectParam.DrawEffectSetting.PushedEffect.EffectTypes中的drpetBorderColorChange,

表示在勾选状态下,边框的颜色变为Orangered,

如下图所示:

接下来再设置勾勾,

在Checked为False的情况下,不需要显示勾勾,

在Checked为True的情况下,显示勾勾,

设置DrawCheckStateParam.DrawRectSetting.Enabled为True,

DrawCheckStateParam.DrawRectSetting.SizeType为dpstPixel,

DrawCheckStateParam.DrawRectSetting.Left,Top,Right,Bottom为4,

表示勾勾是一个边距为4的矩形,

再设置DrawCheckStateParam.DrawEffectSetting.PushedEffect.FillColor为OrangeRed,

DrawCheckStateParam.DrawEffectSetting.PushedEffect.IsFill为True,

勾选DrawCheckStateParam.DrawEffectSetting.PushedEffect.EffectTypes中的drpetIsFillChange和drpetFillColorChange,

表示在勾选状态下,填充一个颜色为Orangered的勾勾矩形,

如下图所示:

再设置标题的显示,

SelfOwnMaterial中有一个IsAutoPosition属性,

它表示自动将标题显示在图片的右边,

因此我们只需要让标题垂直居中显示就可以了,

不需要再设置标题的左边距了,

在SelfOwnMaterial.DrawCaptionParam中设置,

DrawCaptionParam.FontVertAlign设置为fvaCenter,

 

设置完之后,显示效果如下:

将Porperties.Checked设置为False,显示如下: