0

QPushButton があります。このボタンにはテキストがあり、このテキストは数字です。別のオブジェクトのスロットで、ボタンに表示される番号を変更したいのですが、呼び出すと

MyButton->setText(QString("%1").arg(Number));

また

QString tmp;
tmp.setNum(Number);
MyButton->setText(tmp);

ボタンのテキストは変更されません。しかし、私が電話するとき

MyButton->setText("some random text");

それは正常に動作します。ボタンに表示される番号を変更するにはどうすればよいですか?

私のコードの一部:

sortWindow::sortWindow(QWidget *parrent)
{
...
MyButton = new QPushButton;
QString tmp(QString("%1").arg(Number));
MyButton.setText(tmp);
...
}

void sortWindow::workOnSignal(int index)
{
...
if (something)
{
...
QString tmp;
tmp.setNum(Number);
MyButton->setText(tmp);
...
}
4

1 に答える 1

1

のタイプは でNumberなければなりませんint。したがって、正常に動作します。

#include <QApplication>
#include <QPushButton>

int main(int argc,char **argv)
{
    QApplication app(argc,argv);

    QPushButton *pd = new QPushButton;
    pd->setText(QString("%1").arg(1234));
    pd->show();

    return app.exec();
}
于 2013-08-08T14:03:22.590 に答える