<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Qt5/C++ QMenu/QAction...i werd narrisch...</title>
    <link>http://forum.geizhals.at/feed.jsp?id=848149</link>
    <description>Geizhals-Forum</description>
    <item>
      <title>Qt5/C++ QMenu/QAction...i werd narrisch...</title>
      <link>http://forum.geizhals.at/t848149,7315409.html#7315409</link>
      <description>Hat sich erledigt... Man sollt halt ned mit der UI arbeiten bevor sie initialisiert ist.. &lt;img src="smile.gif" width="16" height="19" align="absmiddle" alt=":-)"/&gt;&lt;br/&gt;</description>
      <pubDate>Mon, 21 Jul 2014 14:55:24 GMT</pubDate>
      <guid>http://forum.geizhals.at/t848149,7315409.html#7315409</guid>
      <dc:creator>A national Acrobat</dc:creator>
      <dc:date>2014-07-21T14:55:24Z</dc:date>
    </item>
    <item>
      <title>Qt5/C++ QMenu/QAction...i werd narrisch...</title>
      <link>http://forum.geizhals.at/t848149,7315384.html#7315384</link>
      <description>Hi fellow Coders!&lt;br&gt;&lt;br&gt;Ich dreh bald durch mit dem QMenu/QAction System von Qt. Laut den Dokus soll das "Modell" so aussehen:&lt;br&gt;- QMenuBar&lt;br&gt;-- QMenu&lt;br&gt;---QMenu--&gt;QAction (triggered Signal etc..)&lt;br&gt;&lt;br&gt;Ich post mal den Code:&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;div class=code&gt;&lt;pre&gt;&#xD;
void MainWindow::refreshModels(void) {&#xD;
    QMenu *parent = ui-&amp;gt;menuModel_Operations;&#xD;
    std::list&amp;lt;std::string&amp;gt;::iterator    pIT;&#xD;
    HumanManager &amp;amp;oHM = HumanManager::getSingleton();&#xD;
    QObjectList::iterator   qoIT;&#xD;
    QRegExp qacRE("^models_");&#xD;
    QList&amp;lt;QMenu*&amp;gt; foundEntries;&#xD;
    QList&amp;lt;QMenu*&amp;gt;::iterator fEIT;&#xD;
&#xD;
    // refresh resources&#xD;
    oHM.refreshResources();&#xD;
&#xD;
    // search "old" entries and remove them&#xD;
    foundEntries = parent-&amp;gt;findChildren&amp;lt;QMenu*&amp;gt;(qacRE, Qt::FindChildrenRecursively);&#xD;
&#xD;
    for (fEIT = foundEntries.begin(); fEIT != foundEntries.end(); fEIT++) {&#xD;
        QMenu *mVictim = *fEIT;&#xD;
        QAction *aVictim = mVictim-&amp;gt;menuAction();&#xD;
        mVictim-&amp;gt;removeAction(aVictim);&#xD;
    }&#xD;
&#xD;
    // rebuild Menuentries&#xD;
    for (pIT = oHM.meshBegin(); pIT != oHM.meshEnd(); pIT++) {&#xD;
        std::string mdName = *pIT;&#xD;
        std::stringstream convert;&#xD;
&#xD;
        if (mdName.length() &amp;gt; 1) {&#xD;
            QAction *nwAction = parent-&amp;gt;addAction(QString(mdName.data()));&#xD;
            nwAction-&amp;gt;setEnabled(TRUE);&#xD;
            nwAction-&amp;gt;setVisible(TRUE);&#xD;
            nwAction-&amp;gt;setObjectName(QString(convert.str().data()));&#xD;
            nwAction-&amp;gt;setParent(parent);&#xD;
            connect(nwAction, SIGNAL(triggered()), this, SLOT(action_loadObj()) );&#xD;
        }&#xD;
    }&#xD;
}&#xD;
&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;"ui-&gt;menuModel_Operations" ist das BasisMenu in das ich meine "QAction" Submenüs anhängen will.&amp;nbsp;&amp;nbsp;Normalerweise würd ich mir da erwarten das Qt die "QActions" als SubMenüs zu meinem ersten Menüeintrag anhängt, tuts nicht. &lt;br&gt;&lt;br&gt;So sieht das Menü aus:&lt;br&gt;&lt;a href="http://666kb.com/i/cq9eyk1y7mp4ggp4o.jpg" rel="noopener" target="_blank"&gt;http:/&lt;wbr/&gt;/&lt;wbr/&gt;666kb.com/&lt;wbr/&gt;i/&lt;wbr/&gt;cq9eyk1y7mp4ggp4o.jpg&lt;/a&gt;&amp;nbsp;&amp;nbsp;(bitte klicken).&lt;br&gt;&lt;br&gt;Wo ist da mein Fehler ? Ich habs jetzt auf mehrere Arten probiert - QAction anlegen, dann via parent-&gt;addAction(nwAction); - zusätzliches Menü anlegen und dem ein QAction hinzufügen ... &lt;br&gt;&lt;br&gt;Auch lt. diversen Codesnippets mach ich alles richtig... &lt;img src="frage.gif" width="16" height="26" align="absmiddle" alt="?-)"/&gt; (das removen ist nicht richtig, aber das ist mir bewußt &lt;img src="teeth.gif" width="16" height="19" align="absmiddle" alt="|-D"/&gt; )&lt;br&gt;&lt;br&gt;lg.&lt;br&gt;&lt;br/&gt;</description>
      <pubDate>Mon, 21 Jul 2014 14:55:24 GMT</pubDate>
      <guid>http://forum.geizhals.at/t848149,7315384.html#7315384</guid>
      <dc:creator>A national Acrobat</dc:creator>
      <dc:date>2014-07-21T14:55:24Z</dc:date>
    </item>
  </channel>
</rss>
