2013-09-29 58 views
0

我有一个表格视图,它是从我的Qt项目中的SQL数据库读取的。它包含名称列和存储某个图像路径的列。当我将鼠标悬停在某些图像路径上时,如何将图像显示为工具提示?我已经激活了鼠标跟踪功能,但我真的不知道如何使用它。如果你可以请提供一些例子。比你提前很多。Qt TableView - 鼠标悬停时如何显示图像?

回答

0

视图的模式应该以Qt::TooltipRole响应并返回提示的内容。它可以包含HTML标签,包括img标签显示图像:

class Model : public QAbstractTableModel { 
public: 
    //... 
QVariant data(const QModelIndex &index, int role) const { 
    if (role == Qt::ToolTipRole) { 
    // find path for specified index 
    return QString("<img src='%1'>").arg(path); 
    } 
    //... 
} 

如果您使用的是内置的模型类,如QSqlRelationalTableModel,你可以创建一个类的子类,并重新实现data功能。

+0

谢谢你的回答帕维尔斯特拉霍夫。最后我解决了我的问题。我使用了您的principe中的一些片段和其他论坛的其他代码片段。现在一切正常。再次感谢。 – user2521257

相关问题