<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Не работает перевод до старта QApplication. Как обойти?</title>
    <link>https://opennet.me/openforum/vsluhforumID9/10294.html</link>
    <description>Перед тем, как будет стартовать объект QApplication (метод exec()), мне нужно подготовить определенные файлы, которые нужны для корректного старта, чтобы приложение могло их найти.&lt;br&gt;&lt;br&gt;Подготовка файлов требует пользовательского выбора с вопросом &quot;где разместить нужные файлы?&quot;. Соответственно нужно открыть окно, в котором будет интерфейс выбора. Окно такое есть, оно унаследовано от QDialog, оно работает даже до запуска основного приложения.&lt;br&gt;&lt;br&gt;Но вот проблема: в этом окне есть код автоматического определения языка системы. И он работает, и он определяет язык, и устанавливает его приложению, и этот код запускается самым первым в конструкторе окна:&lt;br&gt;&#091;code&#093;&lt;br&gt;// Автоматическое определение языка системы&lt;br&gt;void InstallDialog::setupAutoLangTranslation()&lt;br&gt;&#123;&lt;br&gt;    QString lang=QLocale().system().name().split(&apos;_&apos;).first().toLower();&lt;br&gt;    QStringList availableLang=&#123;&quot;en&quot;, &quot;ru&quot;&#125;;&lt;br&gt;&lt;br&gt;    if( !availableLang.contains(lang) )&lt;br&gt;    &#123;&lt;br&gt;        lang=&quot;en&quot;;&lt;br&gt;    &#125;&lt;br&gt;&lt;br&gt;    qDebug() &amp;lt;&amp;lt; &quot;Auto detect lang in installator: &quot; &amp;lt;&amp;lt; lang;&lt;br&gt;&lt;br&gt;   </description>

<item>
    <title>Не работает перевод до старта QApplication. Как обойти? (Аноним)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/10294.html#1</link>
    <pubDate>Mon, 20 Jan 2020 11:30:57 GMT</pubDate>
    <description>&amp;gt; Перед тем, как будет стартовать объект QApplication (метод exec()), мне нужно подготовить &lt;br&gt;&amp;gt; определенные файлы, которые нужны для корректного старта, чтобы приложение могло их &lt;br&gt;&amp;gt; найти.&lt;br&gt;&lt;br&gt;...&lt;br&gt;*ля,&lt;br&gt;не приходило на ум - что скорее всего система сигнал-слот не будет работать до запуска exec() ?&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; Или, может быть, есть какой-то другой метод?&lt;br&gt;&lt;br&gt;Дффух - фазoвая инициализация ?&lt;br&gt;Пример, ah( simple win-helper ), в конструкторе ph, вызов void init(); где происходит подготовка всех кишок аппы:&lt;br&gt;&lt;br&gt;int main(&lt;br&gt;int argc,&lt;br&gt;char *argv&#091;&#093;)&lt;br&gt;&#123;&lt;br&gt;&lt;br&gt;  int ret = 0;&lt;br&gt;&lt;br&gt;  FMemWatcher memWatcher;&lt;br&gt;&lt;br&gt;  FAppHelper ah;&lt;br&gt;  if (!ah.isOk()) &#123;&lt;br&gt;&lt;br&gt;    ret = -1;&lt;br&gt;    &#125;&lt;br&gt;&lt;br&gt;  // make copy because qt may change&lt;br&gt;  FArg arg(argc,argv);&lt;br&gt;  if (!arg.isOk()) &#123;&lt;br&gt;&lt;br&gt;    ret = -2;&lt;br&gt;    &#125;&lt;br&gt;&lt;br&gt;  if (0 == ret) &#123;&lt;br&gt;&lt;br&gt;    FGuiApplication app(argc, argv);&lt;br&gt;    FPluginHolder ph(arg, &amp;memWatcher);&lt;br&gt;&lt;br&gt;    if (ph.isOk()) &#123;&lt;br&gt;&lt;br&gt;      ret = app.exec();&lt;br&gt;      &#125;&lt;br&gt;    else &#123;&lt;br&gt;&lt;br&gt;      ret = -3;&lt;br&gt;      &#125;&lt;br&gt;    &#125;&lt;br&gt;&lt;br&gt;  memWatcher.Dump();&lt;br&gt;&lt;br&gt;  return ret;&lt;br&gt;&lt;br&gt;&#125;;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
