当前位置: 首页>>代码示例>>C++>>正文


C++ QListWidget::addAction方法代码示例

本文整理汇总了C++中QListWidget::addAction方法的典型用法代码示例。如果您正苦于以下问题:C++ QListWidget::addAction方法的具体用法?C++ QListWidget::addAction怎么用?C++ QListWidget::addAction使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在QListWidget的用法示例。


在下文中一共展示了QListWidget::addAction方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: reloadAssistantXml

void MainWindow::reloadAssistantXml(const QString &path)
{
    if (m_assistantXmlPath != path) {
        m_assistantXmlPath = path;

        foreach (QListWidget* widget, m_assistantWidgets) {
            widget->deleteLater();
        }
        m_assistantWidgets.clear();

        if (m_assistantXmlPath.isEmpty()) {
            qDebug() << "No assistant defined.";
        } else {
            AssistantXmlReader reader;
            reader.readFile(m_assistantXmlPath);

            QAction* action_insert = new QAction(this);
            action_insert->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Enter));

            for (int i = 0; i < reader.size(); ++i) {
                const Assistant* assistant = reader.assistant(i);
                QListWidget* view = newAssistantListWidget(ASSISTANT_ICON_SIZE, this);
                for (int j = 0; j < assistant->size(); ++j) {
                    const AssistantItem* assistantItem = assistant->item(j);
                    QListWidgetItem* listWidgetItem =
                            new QListWidgetItem(iconFromSvg(ASSISTANT_ICON_SIZE, assistantItem->icon()),
                                                assistantItem->name(), view);
                    listWidgetItem->setData(ASSISTANT_ITEM_DATA_ROLE, assistantItem->data());
                    listWidgetItem->setData(ASSISTANT_ITEM_NOTES_ROLE, assistantItem->notes());
                }
                m_assistantToolBox->addItem(view, assistant->name());
                connect(view, SIGNAL(itemDoubleClicked(QListWidgetItem*)),
                        this, SLOT(onAssistanItemDoubleClicked(QListWidgetItem*)));
                connect(view, SIGNAL(itemSelectionChanged()),
                        this, SLOT(onAssistantItemSelectionChanged()));

                QAction* action = new QAction(this);
                action->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Return));
                m_assistantInsertSignalMapper->setMapping(action, view);
                connect(action, SIGNAL(triggered()),
                        m_assistantInsertSignalMapper, SLOT(map()));
                view->addAction(action);

                m_assistantWidgets << view;
            }
        }
    }
开发者ID:JoyIfBam5,项目名称:plantumlqeditor,代码行数:47,代码来源:mainwindow.cpp


注:本文中的QListWidget::addAction方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。