QT4.7.1とアドインでVS2008を使用しています。私はこの環境に不慣れです。
必要な設定を行い、簡単な「helloworld」を実行することができました。しかし
quit()
、ボタンをクリックするだけで単純なスロットを使おうとすると失敗しました。また、を使用しようとするとビルドが失敗しますQ_OBJECT
。
コメントした後Q_OBJECT
、コードがビルドされ、デバッグされます。今それは示しています
QObject :: connect:。\main.cppにそのようなスロットQWidget:: quit()が見つかりません。
以下は私のコードです
#include <QtGui>
#include "QtGui\QApplication"
#include "QObject"
class Notepad : public QWidget
{
//Q_OBJECT
public:
Notepad();
private slots:
void quit();
private:
QTextEdit *textEdit;
QPushButton *quitButton;
};
Notepad::Notepad()
{
textEdit = new QTextEdit;
quitButton = new QPushButton(tr("Quit"));
connect(quitButton, SIGNAL(clicked()), this, SLOT(quit() ));
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(textEdit);
layout->addWidget(quitButton);
setLayout(layout);
setWindowTitle(tr("Notepad"));
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Notepad nt;// = new Notepad();
nt.show();
return a.exec();
}
ネットで検索しましたが、妥当な解決策が得られませんでした。ほとんどのソリューションは、コマンドラインでqmakeを操作するためのものです。また、プロジェクトの.proファイルを見つけることができます。
どんな助けでも大歓迎です。