[Qt]QLabel的显示圆形_圆角矩形

1.方法
要将一个QLabel设置为圆形,需要用到QLabel的函数setStyleSheet(),修改StyleSheet就行。

const QString m_red_SheetStyle = "min-width: 16px; min-height: 16px;max-width:16px; max-height: 16px;border-radius: 8px;  border:1px solid black;background:red";

const QString m_green_SheetStyle = "min-width: 16px; min-height: 16px;max-width:16px; max-height: 16px;border-radius: 8px; border:1px solid black;background:green";

const QString m_grey_SheetStyle = "min-width: 16px; min-height: 16px;max-width:16px; max-height: 16px;border-radius: 8px; border:1px solid black;background:grey";

const QString m_yellow_SheetStyle = "min-width: 16px; min-height: 16px;max-width:16px; max-height: 16px;border-radius: 8px; border:1px solid black;background:yellow";


ui.lab_LED->setStyleSheet(m_red_SheetStyle);//改成 红色圆形
ui.lab_LED->setStyleSheet(m_green_SheetStyle);//改成 绿色圆形
ui.lab_LED->setStyleSheet(m_grey_SheetStyle);//改成 黄色圆形
ui.lab_LED->setStyleSheet(m_yellow_SheetStyle);//改成 灰色圆形

2.分析StyleSheet
如果不设置最大最小宽度,高度,QLabel就变成圆角矩形了。

min-width:     16px;     //最小宽度 16px
min-height: 16px; //最小高度 16px
max-width: 16px; //最大宽度 16px
max-height: 16px; //最大高度 16px
border-radius: 8px; //边框是圆角,半径8px
border:1px solid black; //边框1px,边框黑色
background: red; //背景是红色