翻譯|使用教程|編輯:鮑佳佳|2020-11-30 11:49:08.700|閱讀 399 次
概述:QtitanRibbon組件實現了Microsoft Ribbon for Qt的概念,設計用于任何使用Qt開發的商業應用。下文是在實際開發過程中所遇到的一些問題,及解決方法!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
QtitanRibbon組件實現了Microsoft Ribbon for Qt的概念,設計用于任何使用Qt開發的商業應用。這個組件和Qt一道為獲取一些應用提供了一個難得的機會,這些應用在全球三大主要平臺Windows、Linux和Mac OS X上都有現代化的外觀和感覺。
下文是在實際開發過程中所遇到的一些問題,及解決方法!
錯誤:動畫中QList/QTree的鼠標懸停/點擊行為不正確。
平臺: 使用QTitanRibbon 5.1.0和Qt 5.13.1,64位。
Bug: 當QListView/QTreeView控件中有可檢查的項目時,當你將鼠標懸停或點擊它們時,你會看到以下情況。
1:沒有動畫,所有行為都是正確的。
當你啟用動畫時。
2:在win7/offfice2007/office2010風格下,行為是錯誤的。
3:但在其他office2013/2016/photoshop中都是正確的。
所以我在controlsdemo的例子中做了一點改動,并用附圖驗證了這個問題。
這是對ControlsDemo示例的mainwindow.cpp文件的修改:
#include <QTreeView> #include <QStandardItemModel> ... MainWindow::MainWindow(QWidget* parent) ... emit updateRecentFileActions(files); // Frank start here QStandardItemModel* pSourceTreeModel = new QStandardItemModel; QStringList szHeaderNameList; szHeaderNameList << "Source/Index" << "Name"; pSourceTreeModel->setHorizontalHeaderLabels(szHeaderNameList); QStandardItem* pSourceItem = new QStandardItem("Item1"); pSourceItem->setCheckable(true); pSourceItem->setTristate(false); pSourceTreeModel->appendRow(pSourceItem); pSourceItem = new QStandardItem("Item2"); pSourceItem->setCheckable(true); pSourceItem->setTristate(false); pSourceTreeModel->appendRow(pSourceItem); pSourceItem = new QStandardItem("Item3"); pSourceItem->setCheckable(true); pSourceItem->setTristate(false); pSourceTreeModel->appendRow(pSourceItem); QTreeView* treeView = new QTreeView(this); treeView->setEditTriggers(QAbstractItemView::NoEditTriggers); treeView->setModel(pSourceTreeModel); treeView->setColumnWidth(0, 250); treeView->setColumnWidth(1, 50); setCentralWidget(treeView); // Frank End here }
當您將鼠標懸停在項目上時,檢查狀態將更改或發生其他意外響應。
Qt商業組件Qtitan推薦:
感謝您的閱讀,希望這篇文章能帶給你一定的幫助!如果這篇文章沒能滿足你的需求、點擊獲取更多文章教程!現在立刻下載Qt6免費試用吧!更多Qt類開發工具QtitanRibbon、QtitanChart、QtitanNavigation、QtitanDocking、QtitanDataGrid在線訂購現直降1000元,歡迎咨詢慧都獲取更多優惠>>
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn