Qt Creatorでユーザーインターフェイスを構築しています。 QMainWindowを拡張したStartWindowクラスを作成しました。作成後、新しいメソッドと属性を追加しました。私は、私に値2を与えるしようとすると、CPPファイルから、今QT UIポインタの属性とメソッドがありません
#include <QMainWindow>
namespace Ui {
class StartWindow;
}
class StartWindow : public QMainWindow
{
Q_OBJECT
public:
explicit StartWindow(QWidget *parent = 0);
~StartWindow();
public:
int i;
private:
Ui::StartWindow *ui;
};
:自動的QT Creatorは、ヘッダファイルのためにこの種のコードを生成
ui->i = 2;
私はこのエラーを取得する:
/home/carl/QT5Projects/DopProject/startwindow.cpp:13: error: 'class Ui::StartWindow' has no member named 'i'
が、私は、スコープ解決演算子を通じてi
にアクセスすることができ
StartWindow::i = 0;
または
this->i = 0;
どちらもない私は
this->ui->i = 0;
を通じてi
にアクセスすることができます誰かが私にそれを説明してもらえますか?
あなたは 'ui'から' i'にアクセスする必要があると思いますか?'i'と' ui'はどちらもクラスメンバ変数です。あなたが 'ui'にアクセスしているのと同じ方法で' i'にアクセスする必要があります。 – Mike
uiはStartWindowポインタ型なので –