如何在 QT 中获得具有圆形边缘和圆形进度边缘的 QProgressBar?
Posted
技术标签:
【中文标题】如何在 QT 中获得具有圆形边缘和圆形进度边缘的 QProgressBar?【英文标题】:How to get a QProgressBar in QT with rounded edges and rounded progress edges? 【发布时间】:2016-03-17 23:20:32 【问题描述】:我创建了一个垂直进度条,并尝试使用圆角设置它的样式。无论我做什么,我似乎都无法获得带有圆角边缘的进度条(QProgressBar::chunk)的进度或块。请帮帮我,我是 QT 新手。
请在下面找到我的代码:-
progressbar_V = new QProgressBar;
progressbar_V->setParent(this);
progressbar_V->setMinimum(0);
progressbar_V->setMaximum(5);
progressbar_V->setValue(3);
progressbar_V->setStyleSheet("QProgressBar border: solid grey; border-width: 6; border-radius: 12; color: black; text-align: centre; margin-right: 12; , QProgressBar::chunk:vertical background-color: #05B8CC; width: 20px;");
progressbar_V->setGeometry(250,250,60,300);
progressbar_V->setOrientation(Qt::Vertical);
进度条文本也在输出的顶部。我如何将它放到垂直进度条的中间
【问题讨论】:
文本对齐:居中; --> 文本对齐:居中; 不确定这是否能解决任何问题,但您的样式表中有一个逗号:, QProgressBar::chunk:vertical ...
。删除那个逗号。
【参考方案1】:
你是对的,你可以使用这个参数:
border-radius: 50px;
获得圆形边框! 但你只是忘记在末尾指定 px 〜( ̄▽ ̄〜)
所以,一旦你的代码更新,它看起来像这样:
progressbar_V->setStyleSheet("QProgressBar border: solid grey; border-width: 6; border-radius: 12px; color: black; text-align: centre; margin-right: 12; , QProgressBar::chunk:vertical background-color: #05B8CC; width: 20px;");
希望能帮到你,祝你有个愉快的一天ヾ( ̄▽ ̄) Bye~Bye~
【讨论】:
【参考方案2】:你需要把你的样式表改成这样:
progressbar_V->setStyleSheet("QProgressBarborder:solid gray;border-bottom-right-radius: 12px;border-bottom-left-radius: 12px; color: black; text-align: center; ,QProgressBar: :chunk background-color: #05B8CC;border-bottom-right-radius: 7px;border-bottom-left-radius: 7px;");
编码愉快..
【讨论】:
以上是关于如何在 QT 中获得具有圆形边缘和圆形进度边缘的 QProgressBar?的主要内容,如果未能解决你的问题,请参考以下文章