ApproximateView::ApproximateView(QWidget *parent, Qt::WFlags flags) : QMainWindow(parent, flags){ transIt = new QTranslator(this); qApp->installTranslator(transIt); QTranslator qtTranslator; qtTranslator.load("qt_" + QLocale::system().name()); qApp->installTranslator(&qtTranslator); ....QDir resors(":/langs"); QStringList filters; filters<<"*.qm"; langsList = resors.entryList(filters); for(int i = 0; i < langsList.size(); i++){ langs.push_back(new QAction(QString(langsList[i]).remove(".qm"),this)); connect(langs[i],SIGNAL(triggered()),this,SLOT(changeLang())); langs[i]->setCheckable(true); } lang->addActions(langs);}
void ApproximateView::changeLang(){ QAction *act = qobject_cast<QAction*>(sender()); int whoSend; for(int i = 0; i < langsList.size(); i++){ if(act != langs[i]) langs[i]->setChecked(false); else whoSend = i; } transIt->load(QString(":/langs/%1").arg(langsList[whoSend]));//Далее тестовые момент. Последняя строка перевод производит (форма сгенерированная uic)//Все остальное никак на перевод не реагирует и оставляет все таким же. enterAdmin->setText(tr("Войти в систему")); help->setText(tr("Помощь")); showFacts->setText("Ололо"); tables->retranslateUi(tables);}