2016-10-28 2 views
0

QTableWidget에 2 개의 열이 있습니다. 첫 번째 열은 텍스트로 채워지는 반면 첫 번째 열은 콤보 박스로 채워집니다.QTableWiget의 특정 열에서 빈 셀을 확인하고 행을 제거하십시오.

내 테이블에는 수표 중 하나를 수행하지 못하여 콤보 박스가 채워지지 않은 행이 몇 개 있는데, 두 번째 열에는 콤보 박스가 만들어지지 않고 다음과 같이 나타납니다. 빈 셀.

두 번째 열의 빈 셀을 확인하고 전체 행을 제거하려면 어떻게해야합니까?

for row in xrange(self.my_table.rowCount()): 
    column_cell = self.my_table.item(row, 1) 
    column_text = str(column_cell.text()) 
    if column_text.isEmpty(): 
     self.my_table.removeRow(row_position) 

을 그리고 다음과 같은 오류 있어요 : 내 셀 라인 편집 등 등 텍스트가되지 않기 때문이다 가정 # AttributeError: 'NoneType' object has no attribute 'text' #

나는 해결책을 온라인으로 검색하는 동안 다음과 같은 시도?

어떻게이 문제를 해결할 수 있습니까?

답변

1

셀에 텍스트가 포함되어 있는지 여부가 아니라 위젯이 포함되어 있는지 확인하는 것이 좋습니다. 또한 행을 제거해도 나머지 행의 인덱스에는 영향을주지 않도록 역순으로을 반복해야합니다.

관련 문제