728x90
QAbstractItemModel을 적용하고 있는 View에 보여지는 폰트 변경하는 방법입니다.
일단 예시로 QAbstractItemModel을 상속받고 있는 QFileSystemModel을 상속받는 다른 클래스를 만들어 줍니다. 그리고 data 함수와 headerData 함수를 오버라이딩 합니다.
class MyFileSystem : public QFileSystemModel
{
QVariant data ( const QModelIndex& index, int role ) const;
QVariand headerData (int section, Qt::Orientation orientation, int role ) const;
...;
};
data 함수를 통해 본문의 폰트를 수정, headerData 함수를 통해 가장 상단 header의 폰트를 수정할 수 있습니다.
QFont font;
QVariant data( const QModelIndex& index, int role )
{
if ( role == Qt::FontRole ) {
return font;
}
return QFileSystemModel::data(index, role);
}
QVariand headerData(int section, Qt::Orientation orientation, int role )
{
if ( role == Qt::FontRole ) {
return font;
}
return QFileSystemModel::headerData(section, orientation, role);
}
위 role에서 폰트 말고도 여러 enum 값을 통해 다양한 설정이 가능합니다.
Qt의 Model / View 관련한 다른 내용은 이 링크 참고 부탁드립니다.
728x90
'Programming > Qt' 카테고리의 다른 글
[Qt] QTime to Seconds / Second to QTime (0) | 2023.03.22 |
---|---|
[Qt] QML(0) - Qt Quick Application 시작하기 (1) | 2023.03.20 |
[Qt] 리눅스 마우스 매크로 만들기 (0) | 2022.09.21 |
Qt Grid Layout addWidget 시 Span 조절 (0) | 2022.09.01 |
Qt Creator white space 표시 제거 (0) | 2022.01.18 |