1、创建一个项目,进行界面UI设计,如下:
2、lineEdit控件添加小图标代码:
QAction *pTrailingAction = new QAction(this);
pTrailingAction->setIcon(QIcon(":/test1/Resources/pictrue/warning.png"));
ui.lineEdit->addAction(pTrailingAction, QLineEdit::TrailingPosition);
3、添加提示文本
pTrailingAction->setToolTip(QStringLiteral("温度过高,请注意!"));
4、显示效果
5、完整代码块(test.cpp)
#include "test1.h"
test1::test1(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
connect(ui.lineEdit, SIGNAL(editingFinished()), this, SLOT(on_label()));
Init();
}
void test1::on_label()
{
QString str;
double a;
a = ui.lineEdit->text().toDouble();
a = a*1.8 + 32;
str = QString::number(a, 'f', 1);
ui.label_3->setText(str);
}
void test1::Init()
{
//connect(pTrailingAction, SIGNAL(triggered(bool)), this, SLOT(onSearch()));
connect(ui.lineEdit, SIGNAL(editingFinished()), this, SLOT(check()));
}
void test1::check()//校验
{
if (ui.lineEdit->text().toDouble() > 37.5)
{
ui.lineEdit->setStyleSheet("border:1px solid red");
QAction *pTrailingAction = new QAction(this);
pTrailingAction->setIcon(QIcon(":/test1/Resources/pictrue/warning.png"));
ui.lineEdit->addAction(pTrailingAction, QLineEdit::TrailingPosition);
pTrailingAction->setToolTip(QStringLiteral("温度过高,请注意!"));
}
if (ui.lineEdit->text().toDouble() < 35.5)
{
ui.lineEdit->setStyleSheet("border:1px solid red");
QAction *pTrailingAction = new QAction(this);
pTrailingAction->setIcon(QIcon(":/test1/Resources/pictrue/warning.png"));
ui.lineEdit->addAction(pTrailingAction, QLineEdit::TrailingPosition);
pTrailingAction->setToolTip(QStringLiteral("温度过低,请注意!"));
}
}