Am Mittwoch, 2. November 2011, 06:23:36 schrieb Nader Abedrabbo: > If their is a way to disable certain columns in a table from being selected, > I would appreciate if you can guide me to it.
you can define you own model, deriving from a Qt standard model, and override flags(). In the link I gave you there is a file rulesetselector.py which defines a tree view where some items can be edited in different ways (combobox, text, numbers, checkboxes). Your table view should be easier to implement. def flags(self, index): # pylint: disable=R0201 """tell the view what it can do with this item""" if not index.isValid(): return Qt.ItemIsEnabled column = index.column() item = index.internalPointer() content = item.rawContent checkable = False if isinstance(content, Ruleset) and column in (0, 3): mayEdit = True elif isinstance(content, Rule): mayEdit = column in [0, 1, 2, 3] checkable = column == 1 and content.parType is bool else: mayEdit = False mayEdit = mayEdit and not isinstance(item.ruleset(), PredefinedRuleset) result = Qt.ItemIsEnabled | Qt.ItemIsSelectable if mayEdit: result |= Qt.ItemIsEditable if checkable: result |= Qt.ItemIsUserCheckable return result _______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt