OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5749|回复: 4

求助emwin radio控件前面那个圆圈怎么改变大小呢?

[复制链接]

3

主题

36

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2014-7-4
在线时间
114 小时
发表于 2020-4-5 19:04:24 | 显示全部楼层 |阅读模式
求助emwin radio控件前面那个圆圈怎么改变大小呢?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

26

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
217
金钱
217
注册时间
2016-9-5
在线时间
58 小时
发表于 2021-8-12 23:46:49 | 显示全部楼层
emWin5中文手册里有讲:18.14.1 配置结构 如果要设置皮肤的默认外观或在运行时更改外观,则请使用类型RADIO_SKINFLEX_PROPS 的配置结构:
RADIO_SKINFLEX_PROPS 的元素:
数据类型元素描述
U32 aColorButton[4]
[0] - 按钮框架的外部颜色。
[1] - 按钮框架的中间颜色。
[2] - 按钮框架的内部颜色。
[3] - 按钮的内部颜色。
int ButtonSize 按钮的大小(以像素为单位)。
回复 支持 反对

使用道具 举报

1

主题

26

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
217
金钱
217
注册时间
2016-9-5
在线时间
58 小时
发表于 2021-8-30 17:57:16 | 显示全部楼层
将RADIO.h中的结构体typedef struct {
  GUI_COLOR aColorButton[4];
  int       ButtonSize;
} RADIO_SKINFLEX_PROPS;
传参数进去就可以设置了。比如:
case ID_RADIO_1: //RADIO1通知代码
      switch(NCode) {
                case ID_RADIO_1: //RADIO0通知代码
                    switch(NCode)
                    {
                        case WM_NOTIFICATION_CLICKED:
                            break;
                        case WM_NOTIFICATION_RELEASED:
                            break;
                        case WM_NOTIFICATION_VALUE_CHANGED:
                            hItem1 = WM_GetDialogItem(pMsg->hWin, ID_RADIO_1);   //获取RADIO1的句柄
                            radio_widg.ButtonSize=5;             //设置RADIO小圆圈大小
                            break;
                    }
                                    }
      break;
回复 支持 反对

使用道具 举报

1

主题

26

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
217
金钱
217
注册时间
2016-9-5
在线时间
58 小时
发表于 2021-8-30 23:07:08 | 显示全部楼层
通过验证是可以的,最简单的代码如下:
’        RADIO_SKINFLEX_PROPS radioProps;

        RADIO_GetSkinFlexProps(&radioProps, RADIO_SKINFLEX_PI_UNPRESSED);
        radioProps.ButtonSize = 24;
        RADIO_SetSkinFlexProps(&radioProps, RADIO_SKINFLEX_PI_UNPRESSED);

        RADIO_GetSkinFlexProps(&radioProps, RADIO_SKINFLEX_PI_PRESSED);
        radioProps.ButtonSize = 24;
        RADIO_SetSkinFlexProps(&radioProps, RADIO_SKINFLEX_PI_PRESSED);
回复 支持 反对

使用道具 举报

3

主题

36

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
376
金钱
376
注册时间
2014-7-4
在线时间
114 小时
 楼主| 发表于 2021-9-28 15:56:50 | 显示全部楼层
maicolwu 发表于 2021-8-30 23:07
通过验证是可以的,最简单的代码如下:
’        RADIO_SKINFLEX_PROPS radioProps;

Radio控件出现字体下沉,有什么解决策略吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 22:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表