0
我想更改語言使用QCoreApplication::installTranslator
與幾種不同的.qm
文件爲每種語言(項目的不同部分導致不同的.qm文件)。如何從應用中刪除所有QTranslator?
這是蠻好用的一個以上的.qm文件都:
QCoreApplication::installTranslator(QTranslator *translationFile)
多個翻譯文件可以安裝。翻譯按照與其安裝順序相反的順序搜索 ,因此最先搜索最近安裝的翻譯文件的最多 ,並且最後搜索安裝的第一個 翻譯文件。
但是,如果我不是remove舊譯者,他們仍然是翻譯的候選人。儘管他們會是最近安裝的翻譯人員。
如何在加載想要的文件之前清除之前加載的任何文件?
我看到的唯一方法是保持我安裝的指針,並在我想要更改時逐個刪除它們,但有沒有更直接的方法?
你能證明你對此有何評論更好地理解代碼。 – eyllanesc
只需保留一些舊譯員列表。或者使用一些常見的父級(可以是一些虛擬的'QObject')來維護它。在這種情況下,您將能夠刪除相應的翻譯。我不認爲這應該是一個問題。 –
@MarekR它不是,但QApp這樣做會很方便,因爲它已經知道你安裝的翻譯器,它可以清除它的私人轉換器列表,而不是讓我逐一刪除它們。 – ymoreau