0

im new to qt as previously im using dev c++ and jetbrains, i have 4 errors that i hope anyone can help with, heres the following code:

void MainWindow::on_btnConvert_clicked()

double value, result = 0.0;
QString currency;

ui->lblGbp->setText("");
ui->lblUsd->setText("");
ui->lblEur->setText("");
ui->lblJpy->setText("");
ui->lblKrw->setText("");

value = ui ->txtAmount->text().toDouble();
currency = ui ->cbCurrency->currentText();

if (currency == "GBP")
{
    if(ui ->cbGbp->isChecked())
    {
        ui->lblGbp->setText(QString::number(value)+" pound = "+QString::number(value)+" pound");
    }
    if (ui->cbUsd->isChecked())
    {
        result = value*1.22;
        ui->lblUsd->setText (QString::number(value)+" pound = "+QString::number(result)+" usd");
    }
    if (ui->cbEur->isChecked())
    {
        result = value*1.15;
        ui->lblEur->setText (QString::number(value)+" pound = "+QString::number(result)+" euro");
    }
    if (ui->cbJpy->isChecked())
    {
        result = value*166;
        ui->lblJpy->setText (QString::number(value)+" pound = "+QString::number(result)+" yen");
    }
    if (ui->cbKrw->isChecked())
    {
        result = value*1578;
        ui->lblKrw->setText (QString::number(value)+" pound = "+QString::number(result)+" won");
    }

}
else if (currency == "USD")
{
    if(ui ->cbGbp->isChecked())
    {
        result = value*0.81;
        ui->lblGbp->setText(QString::number(value)+" usd = "+QString::number(result)+" pound");
    }
    if (ui->cbUsd->isChecked())
    {
        ui->lblUsd->setText (QString::number(value)+" usd = "+QString::number(value)+" usd");
    }
    if (ui->cbEur->isChecked())
    {
        result = value*0.94;
        ui->lblEur->setText (QString::number(value)+" usd = "+QString::number(result)+" euro");
    }
    if (ui->cbJpy->isChecked())
    {
        result = value*135;
        ui->lblJpy->setText (QString::number(value)+" usd = "+QString::number(result)+" yen");
    }
    if (ui->cbKrw->isChecked())
    {
        result = value*1283;
        ui->lblKrw->setText (QString::number(value)+" usd = "+QString::number(result)+" won");
    }

}
else if (currency == "EUR")
{
    if(ui ->cbGbp->isChecked())
    {
        result = value*0.86;
        ui->lblGbp->setText(QString::number(value)+" eur = "+QString::number(result)+" pound");
    }
    if (ui->cbUsd->isChecked())
    {
        result = value*1.05;
        ui->lblUsd->setText (QString::number(value)+" eur = "+QString::number(result)+" usd");
    }
    if (ui->cbEur->isChecked())
    {
        ui->lblEur->setText (QString::number(value)+" eur = "+QString::number(value)+" euro");
    }
    if (ui->cbJpy->isChecked())
    {
        result = value*143;
        ui->lblJpy->setText (QString::number(value)+" eur = "+QString::number(result)+" yen");
    }
    if (ui->cbKrw->isChecked())
    {
        result = value*1361;
        ui->lblKrw->setText (QString::number(value)+" eur = "+QString::number(result)+" won");
    }

}
else if (currency == "KRW")
{
    if(ui ->cbGbp->isChecked())
    {
        result = value*0.63;
        ui->lblGbp->setText(QString::number(value)+" won = "+QString::number(result)+" pound");
    }
    if (ui->cbUsd->isChecked())
    {
        result = value*0.77;
        ui->lblUsd->setText (QString::number(value)+" won = "+QString::number(result)+" usd");
    }
    if (ui->cbEur->isChecked())
    {
        result = value*0.73;
        ui->lblEur->setText (QString::number(value)+" won = "+QString::number(result)+" euro");
    }
    if (ui->cbJpy->isChecked())
    {
        result = value*105;
        ui->lblJpy->setText (QString::number(value)+" won = "+QString::number(result)+" yen");
    }
    if (ui->cbKrw->isChecked())
    {
        ui->lblKrw->setText (QString::number(value)+" won = "+QString::number(value)+" won");
    }

}
else if (currency == "JPY")
{
    if(ui ->cbGbp->isChecked())
    {
        result = value*166 ;
        ui->lblGbp->setText(QString::number(value)+" yen = "+QString::number(result)+" pound");
    }
    if (ui->cbUsd->isChecked())
    {
        result = value*136 ;
        ui->lblUsd->setText (QString::number(value)+" yen = "+QString::number(result)+" usd");
    }
    if (ui->cbEur->isChecked())
    {
        result = value*144 ;
        ui->lblEur->setText (QString::number(value)+" yen = "+QString::number(result)+" euro");
    }
    if (ui->cbJpy->isChecked())
    {
        ui->lblJpy->setText (QString::number(value)+" yen = "+QString::number(value)+" yen");
    }
    if (ui->cbKrw->isChecked())
    {
        result = value*9.44;
        ui->lblKrw->setText (QString::number(value)+" yen = "+QString::number(result)+" won");
    }

}

}

im using if else statement to make this working with my gui, but as i make the last 2 if else statement , im getting this error enter image description here

i really hope anyone can help , im stuck to this error for 2 days already , and my deadline is 3 days from now. please , help anyone

  • 2
    `Undefined reference to [...]` means that the mentioned function implementation is not visible to the linker. Most likely you forgot to implement it. Also please post error messages as text and not images. – perivesta Jun 28 '22 at 11:26
  • The code you posted is confusing because it appears to be just a small part of `MainWindow` that is completely unrelated to the errors. The problem is you most likely did not implement your `void MainWindow:on_label_5_customContextMenuRequested(CPoint&)` function. – drescherjm Jun 28 '22 at 12:01

0 Answers0