0

アプリケーションにリッチ テキスト編集機能を追加しようとしていますが、機能しないようです。これはほんの一例ですが、私はそれを機能させることができません。誰が私が欠けているものを教えてもらえますか?

ここに私がこれまでに持っているコードがあります...これは.hファイルにあります

private slots:
void newFile();
void open();
bool save();
bool saveAs();
void about();
void documentWasModified();
void bold();

これは.cppファイルにあります...私も持っています#include <QTextEdit>

    void MainWindow::bold()
{
}

これに伴い、ページをもう少し下へ

boldAct = new QAction(tr("&Bold"), this);
    boldAct->setCheckable(true);
    boldAct->setShortcut(QKeySequence::Bold);
    boldAct->setStatusTip(tr("Make the text bold"));
    connect(boldAct, SIGNAL(triggered()), this, SLOT(bold()));
4

1 に答える 1

0

QAction シグナルの署名が正しくありません。そのはず

connect(boldAct, SIGNAL(triggered(bool)), this, SLOT(bold()));

あるいは

connect(boldAct, SIGNAL(triggered(bool)), SLOT(bold()));

また、QObject::connect()はブール値を返し、接続の成功を示します。

QMetaObject::checkConnectArgs()は、シグナルとスロットを接続できることを確認するのに役立ちます。

于 2012-11-02T22:55:29.650 に答える