Files
GUI/src/components/AccountRoleComboDelegate.cpp
2022-04-22 17:16:45 +08:00

25 lines
981 B
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// Created by Krad on 2021/12/8.
//
#include "AccountRoleComboDelegate.h"
#include <QPainter>
#include "db/SQLHelper.h"
AccountRoleComboDelegate::AccountRoleComboDelegate(QWidget *parent):QItemDelegate(parent) {
SQLHelper::QueryMap("select RoleID,RoleName from Role",map);
}
//之前使用重写paint来实现了替换显示文字效果一般
//
//void AccountRoleComboDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const {
// QItemDelegate::paint(painter, option, index);
//}
//相较于直接在paint里面操作这是一个更好的选择可以直接改变Display而不影响前后景的绘制。
void AccountRoleComboDelegate::drawDisplay(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect,
const QString &text) const {
//绘制文本
painter->drawText(option.rect, Qt::TextWordWrap | Qt::AlignCenter , map[text].toString());
}