0

アプリケーションの最初の使用時にのみ、メッセージを表示したくありません。つまり、アプリケーションが初めて呼び出されたときに、コードの一部を一度だけ実行する必要があります。QSettings を使用してみましたが、うまくいきませんでした。

if(firstTime)
   {
      //do something!
   }
4

3 に答える 3

3

起動時に QSettings の値を確認してください。存在しない場合は、最初の起動です。その後、変数を設定して、後続のロードごとに検出されるようにします。

PyQt4 では、次のようになります (C++ に変換できると確信しています)。

settings = QSettings("foo.plist", QSettings.NativeFormat)

if not settings.contains('hasLaunched'):
    # this is our first time! Weee

# no matter what, set the value for the future
settings.setValue('hasLaunched', 1)
于 2012-08-12T05:10:28.613 に答える
0

CPPの場合:

// Setup the QSettings variable
QSettings settings("Organization", "ApplicationName", this);

// Check if the value for "firsttime" is set, 
// and add default value to true    
if(settings.value("firsttime", true).toBool())
    QMessageBox::information(this, "Hello", "This is our first time");

// Set the value to false, because from now on its not the first time
settings.setValue("firsttime", false);
于 2012-08-13T10:16:06.283 に答える
0

「hasLaunched」の代わりに「lastLaunchedVersion」を使用して、そこにバージョン番号を保存できます。このようにして、必要に応じてアップグレードごとにいくつかのバージョン固有の手順を簡単に実行し、最初の起動も検出できます。

于 2012-08-13T09:24:50.877 に答える