#ifndef CARD_LIST_WIDGET_H #define CARD_LIST_WIDGET_H #include #include #include // 卡片数据结构 struct CardData { QString name; QString date; QString description; }; // 自定义委托类来绘制卡片样式 class CardItemDelegate : public QStyledItemDelegate { Q_OBJECT public: explicit CardItemDelegate(QObject* parent = nullptr); void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override; QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const override; }; // 主窗口类 class MainWindow : public QWidget { Q_OBJECT public: explicit MainWindow(QWidget* parent = nullptr); private: QListWidget* listWidget; void addCardItem(const CardData& data); }; #endif // CARD_LIST_WIDGET_H