Ex_Dui组件扩展,箭头按钮例程

易语言 2020-07-13 20:49:19

Ex_Dui组件扩展,箭头按钮例程

Ex_BeginPaint (组件句柄, Exps, , 真)
图形_描边_圆角矩形 (Exps.mGraphics, Exps.Rcf, 3, RGB2ARGB (#灰色, 200))
左边矩形 = Exps.Rcf
OFFSETRCF (0, 0, -23, -6, 左边矩形)
左边矩形1 = 左边矩形
左边矩形1.Height = 左边矩形.Height + 6
右边矩形 = MakeRCF (Exps.Rcf.Width - 21, 1, 20, Exps.Rcf.Height - 2, )
图形_画直线 (Exps.mGraphics, RGB2ARGB (#灰色), 左边矩形.left + 左边矩形.Width, 左边矩形.top + 4, 左边矩形.left + 左边矩形.Width, 左边矩形.top + 左边矩形.Height, 1)
GdipSetStringFormatLineAlign (集_文本数据.取指针 (), #文本对齐_居中)
GdipSetTextRenderingHint (Exps.mGraphics, 3)
.如果 (集_焦点按钮 = 1)
.如果 (集_左键按下)
图形_填充_圆角矩形 (Exps.mGraphics, 左边矩形1, 1, 集_背景色 [2])
.否则
图形_填充_圆角矩形 (Exps.mGraphics, 左边矩形1, 1, 集_背景色 [2])
.如果结束

.否则
图形_填充_圆角矩形 (Exps.mGraphics, 左边矩形, 5, 集_背景色 [1])
.如果结束
.如果 (集_焦点按钮 = 2)
.如果 (集_左键按下)
三角偏移 = 1
图形_填充_圆角矩形 (Exps.mGraphics, 右边矩形, 1, 集_背景色 [2])
.否则
三角偏移 = -1
图形_填充_圆角矩形 (Exps.mGraphics, 右边矩形, 1, 集_背景色 [2])
.如果结束

.否则
三角偏移 = 0
图形_填充_圆角矩形 (Exps.mGraphics, 右边矩形, 5, 集_背景色 [1])
.如果结束
三角矩形 [1].x = 右边矩形.left + 右边矩形.Width ÷ 2 - 5
三角矩形 [1].y = 右边矩形.top + 右边矩形.Height ÷ 2 - 3 + 三角偏移
三角矩形 [2].x = 右边矩形.left + 右边矩形.Width ÷ 2 + 5
三角矩形 [2].y = 右边矩形.top + 右边矩形.Height ÷ 2 - 3 + 三角偏移
三角矩形 [3].x = 右边矩形.left + 右边矩形.Width ÷ 2
三角矩形 [3].y = 右边矩形.top + 右边矩形.Height ÷ 2 + 3 + 三角偏移
图形_填充_多边形 (Exps.mGraphics, 三角矩形, RGB2ARGB (#黑色, 200))
.如果 (集_左键按下 且 集_焦点按钮 = 1)
OFFSETRCF (1, (左边矩形.Height - 字体_取尺寸 (全局_默认字体)) ÷ 2 + 1, , , 左边矩形)
.否则
OFFSETRCF (, (左边矩形.Height - 字体_取尺寸 (全局_默认字体)) ÷ 2, , , 左边矩形)
.如果结束
图形_画文本 (Exps.mGraphics, 左边矩形, A2W (集_标题), 集_字体指针, 集_文本颜色, 集_文本数据.取指针 (), , )