[Qt-interest] Concise code to disable a QTableWidgetItem?

K. Frank kfrank29.c at gmail.com
Wed Mar 10 17:45:54 CET 2010


Good Day All -

A minor, non-urgent question...

To disable a QTableWidgetItem I do the following:

  Qt::ItemFlags flags = qTableWidget.item (row, col)->flags();
  flags &= ~Qt::ItemIsEnabled;
  qTableWidget.item (row, col)->setFlags (flags);

This can be collapsed to:

  qTableWidget.item (row, col)->setFlags (qTableWidget.item (row,
col)->flags() & ~Qt::ItemIsEnabled);

But in either case the code is maybe not as clean and readable as one
might like.
Is there a better way that I am missing?

I'd like to do something like:

  qTableWidget.item (row, col)->setDisabled (true);

(but QTableWidgetItem has no setDisabled() member function).

or:

  qTableWidget.item (row, col)->flags() &= ~Qt::ItemIsEnabled

(but flags() returns a copy of the flags, rather than a reference).

Hardly a big deal, I know.  But please let me know if there is a better,
"qt-good-housekeeping-approved" idiom for disabling a QTableWidgetItem.

Thanks.


K. Frank



More information about the Qt-interest-old mailing list