[英]How to clear a label in qt creator
這是我第一次在此站點上寫文章,我正在嘗試通過Qt-creator與我聯系,但是我遇到了一個問題:我想在用戶單擊按鈕時刪除標簽的文本,我已經嘗試了一些解決方案但沒有成功
這是代碼:
struct finestra{
float costo;
int altezza;
int larghezza;
QString text;
QString costoStr;
};
float Totale=0;
finestra vet[21];
int i=1;
//SOME CODE
Totale+=vet[i].costo;
vet[i].costoStr = QString::number(vet[i].costo);
vet[i].text = vet[i-1].text + "Finestra ad un anta bianca <br>" + "€" + vet[i].costoStr +"<br>";
ui->TotaleFinestre->setText(QString(vet[i].text));
i++;
我已經嘗試過使用此功能:
void preventivi::on_pushButton_clicked()
{
ui->TotaleFinestre->clear();
}
如果有人知道該怎么做,請回答,
感謝所有人 ,對不起我的英語不好。
也許你應該嘗試
void preventivi::on_pushButton_clicked()
{
ui->TotaleFinestre->setText("");
}
當QLabel定義了插槽void QLabel::clear()
,您還可以使用QObject::connect
方法將該插槽與單擊按鈕后將發出的clicked()信號QObject::connect
:
QObject::connect(pointer_to_your_pushButton, SIGNAL(clicked()), pointer_to_your_label, SLOT(clear()));
編輯:這是一個小例子
UI是具有QLabel和QPushButton的QWidget。 我是用Qt Designer做到的,但這並不重要。
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
QObject::connect(ui->pushButton, SIGNAL(clicked()), ui->label, SLOT(clear()));
}
Widget::~Widget()
{
delete ui;
}
您甚至可以使用Qt Designer中的“編輯信號/插槽”來做到這一點,並在小部件之間建立信號/插槽連接。 (您無需手動調用先前的QObject :: connect,因為它將在uic生成的Ui_Widget
類內自動完成)
或者,您可以不使用Qt Designer來完成所有工作,這取決於您。 希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.