2011-04-21 5 views
0

최근 Qt (PyQt)의 QTableView를 사용하여 프로그램을 작성하고 있습니다. 그러나 현재 셀/인덱스 (파선으로 둘러싸인 포커스 된 셀)는 다른 선택된 셀과 동일한 배경색을가집니다.QTableView의 현재 셀의 배경색을 어떻게 설정할 수 있습니까?

현재 셀을 눈에 띄게 만들 수있는 방법이 있습니까? Qt 디자이너를 사용하여 스타일 시트를 설정했지만 유용한 스타일을 찾을 수 없습니다.

여기는 내 첫 번째 질문입니다. 실수를했다면 알려주세요. 고맙습니다. 불쌍한 영어도 용서해주십시오.

감사합니다.

답변

0

QTableView를 사용하는 특별한 이유가 있습니까? 간단한 QTableView 구현 인 QTableWidget을 사용하면 원하는 효과를 쉽게 얻을 수 있습니다.

1) 쿼리 QTableWidget은 current item입니다. (A QTableView 내의 모든 셀의 배경색을 변경하려면 사용자가 색상 (예 : QVariant (QColor 등 (적색) 반환해야 어쩌면 또한 전경)

+0

실마리를 가져 주셔서 감사합니다. 대리자에서 모델/뷰에 setBackGround를 수행하는 방법이 있어야한다고 생각합니다. 지금 찾으려고 노력 중입니다. –

0

)

2)에서) 거기에 QTablewidgetitem::setBackGround를 호출하여 Qt :: BackgroundColorRole로 설정된 role 매개 변수가있는 호출에 대해서만 모델 클래스의 data() 메서드를 호출합니다.

나를 위해 일하는 또 다른 역할 Qt :: BackgroundRole이 있습니다 (Qt4에서).

관련 문제