1

こんにちは、Qt5 で多言語アプリケーションを作成しています。アクセスしたい

QApplication a(argc, argv);

私の Settings クラスの main.cpp にローカライズされています。2 つのコマンドを実行するには、これが必要です。

a.installTranslator();
a.removeTranslattor();

これをやろうとするとエラーが発生します:

C2228: left of '.installTranslator' must have class/struct/union
C2228: left of '.removeTranslator' must have class/struct/union

どのように呼び出すことができますか?

4

1 に答える 1

3

必要な機能に応じて、次の 2 つのオプションがあります。

  1. QApplicationにはいくつかの静的メソッドがあるため、ヘッダーを含める限り、ほとんどどこからでも呼び出すことができます。
  2. すでにコメントしているように、非静的メソッドへのさらなるアクセスを可能にするグローバル ポインター qAppがあります。これは、QApplication がどの Qt アプリでもシングルトンであるためです。

これは Qt 4 および Qt 5 で有効です。

于 2015-11-26T20:48:46.053 に答える