51 lines
1.4 KiB
C++
Raw Normal View History

#include "resultitem.h"
#include "ui_resultitem.h"
ResultItem::ResultItem(QWidget *parent)
: QWidget(parent)
, ui(new Ui::ResultItem)
{
ui->setupUi(this);
// 强制应用样式表 - 这是关键!
this->setAttribute(Qt::WA_StyledBackground, true);
// 初始化时设置样式
setItemStyle();
}
ResultItem::~ResultItem()
{
delete ui;
}
void ResultItem::setResultData(int targetIndex, const ThreadPosition& position)
{
// 根据类型设置显示文本(带序号)
QString typeStr;
if (position.type == ThreadPosType::ThreadHead) {
typeStr = QString("%1-线头").arg(position.groupIndex);
} else {
typeStr = QString("%1-下刀").arg(position.groupIndex);
}
ui->result_id->setText(typeStr);
// 设置数据到对应的Label控件
ui->result_x->setText(QString("%1").arg(position.x, 0, 'f', 2));
ui->result_y->setText(QString("%1").arg(position.y, 0, 'f', 2));
ui->result_z->setText(QString("%1").arg(position.z, 0, 'f', 2));
ui->result_angle->setText(QString("%1°").arg(position.roll, 0, 'f', 2));
}
void ResultItem::setItemStyle()
{
// 紧凑样式间隔由QListWidget的spacing控制
this->setStyleSheet(
"ResultItem { "
" border: 1px solid #3B3D47; "
" margin: 0px; "
" padding: 0px; "
"} "
);
}