用Qt制作一个简单的LED指示灯

时间:2016-07-23 12:43:49

标签: javascript html c++ css qt

您好我想根据Qt创建一个CSS的LED指示器,来自http://cssdeck.com/labs/css-leds我创建了一个标签,其中包含富文本作为来源:<div class="led-red"></div>和样式折叠:

margin: 20px auto;
width: 12px;
height: 12px;
background-color: #940;
border-radius: 50%;

我删除了box-shadow,因为Qt无法识别它。

  • 为什么渲染是正方形而不是圆形,我也尝试使用无线电它应该可以工作,但它没有?

  • 如何将JavaScriptCSS不支持的某些花哨样式应用于按钮?

1 个答案:

答案 0 :(得分:2)

QL小部件(如QLabel或QTexEdit)仅支持HTML 4的一部分(QLabel documentation)。

因此可能不支持{3}属性border-radius

如果您想要显示LED,您可以:

  • 通过继承QWidget创建LED小部件类,并在paintEvent()函数中绘制所需的LED。
  • 将pixmap / image添加到现有小部件。 (QLabel::setPixmap()QPushButton::setIcon()等。)

另外,在使用Qt小部件时,您无法使用CSS和javascript自定义GUI。它们支持样式表,其中一些处理富文本,但样式表打破QStyle机制,富文本不遵循HTML5 / CSS3标准。