lineEdit控件添加小图标及鼠标悬停文本提示

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("温度过低,请注意!"));
	}
}

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值