【问题标题】:QWidget - set border from C++ codeQWidget - 从 C++ 代码设置边框
【发布时间】:2017-03-19 18:15:22
【问题描述】:

我在 Qt 5.8 中有 QWidget 实例(其中包含其他 QWidget),我想在它周围设置一些边框。有没有办法从 C++ 做到这一点而不影响它的任何孩子及其设置和位置?

我不想使用样式表,它需要与任何系统样式一起使用。

【问题讨论】:

  • 至少,您可以使用 C++ 设置样式表,例如 w.setStyleSheet("border:1px solid rgb(0, 255, 0); ")

标签: c++ qt qwidget


【解决方案1】:

你应该使用继承 QWidget 的 QFrame。

并将下面方法中的Frame::Shape设置为QFrame::Box。这将在您的框架周围产生边框。

QFrame::setFrameShape( QFrame::Shape); 

并使用 setLineWidth 设置线宽

QFrame::setLineWidth(int); 

【讨论】:

  • 谢谢,这完全符合我的要求 :)。使用 QFrame 而不是 QWidget 有什么缺点吗?
  • 也许吧!但我什么也没看到。它是一个具有一些额外属性的小部件。所以不用担心。
  • 有没有办法在没有样式表的情况下指定边框颜色?
猜你喜欢
  • 2012-02-24
  • 2016-03-14
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 2011-10-10
  • 2017-10-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多