0

マルチ言語を実行するプログラムがあります。プラットホーム。ユーザーが言語を選択すると、プログラムの言語全体が主に文字列に変更され、次回ユーザーがアプリケーションを使用するときに備えて保存されます。問題は、ユーザーが言語を更新し、アプリケーションをシャットダウンしない場合、プロットの言語が更新されないことです。それが行く方法は私のselectLangです。私のメインで、私は mainApp をポイントし、次に currentlang を持つ lang クラスをポイントします。以下のコードを参照 main.cpp

    void MainWindow:: SelectLang(int lang)
{
    m_mainApp->m_lang->currentLang=lang;
    ui->m_actionEnglish->setChecked(lang==0);
    ui->m_actionFrench->setChecked(lang==1);
    ui->m_actionItalian->setChecked(lang==3);
    ui->m_actionSpanish->setChecked(lang==2);
    ui->m_actionRussian->setChecked(lang==4);
    ui->m_actionGerman->setChecked(lang==5);
    ui->m_actionPortuguese->setChecked(lang==6);
    UpgradeLang();
}

私のcplotファイル

 setAxisTitle(yLeft,(m_main->m_lang->strTab[m_main->m_lang->currentLang][45]));//this is temp c but wont translate when language changes

m_main は MainAPP です

私は初心者レベルで、新しい QT GUI もあります。追加情報が必要な場合は、喜んで提供します

4

1 に答える 1

0

新しい言語で更新されていないのはどの部分ですか? はっきりとはわかりません。そして、UpgradeLang() で何をしましたか?

しかし、この資料はあなたにとって非常に役立つと思います:

http://qt-project.org/wiki/How_to_create_a_multi_language_application

上記の記事で十分な情報があります。

ユーザーが設定をトリガーしたときに、古い翻訳ファイルをアンロードし、新しい翻訳ファイルをロードするのは、QTranslator と QApplication だけです。

于 2012-10-16T15:21:42.907 に答える