簡體   English   中英

如何在Qt Creator中清除標簽

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM