I have not yet found a better way to do this than by first building a list of rows you want to be visible, then setting the model's filter with setFilter().



On May 6, 2010, at 12:24 PM, Philippe Crave wrote:

Yes, I use that in the model also.
but now, I need to iterate over the row, in the tableView. I want to
hide row when the data is an empty string.
I found that I can get the string with self.currentIndex().data().toString()
so, I suppose that I have to find a way to modify the currentIndex


2010/5/6 Scott Frankel <[email protected]>:

On May 6, 2010, at 9:46 AM, Philippe Crave wrote:

actually, I just want to loop over the rows.
I do not find a max_row, or an iterator over the rows of a Table.

Take a look at your model's rowCount() and record() methods. I think you'll want to be iterating over the records in your model, not the tableview
itself.

Scott


2010/5/6 Philippe Crave <[email protected]>:

thank you, both of you !
I will check the filtering solution.
I am now implementing the setColumnHidden. just have to customize a
QTableView class. seems simple.

by the way, do you know how to get the total number of row in a table ?
i must be blind, but I could not find it.

2010/5/6 Christian Brugger <[email protected]>:

Just to outline my idea a bit more:
Yeah one model class and one view class. But with different filters
between
model and views. You wouldn't just attach your 2 views to your model,
but
rather would attach each view to an individual filter (could be two
objects
of the same custom filter class) and then would attach both filters to
your
model. Such a custom filter could be created as described in the docs:

http://doc.trolltech.com/4.6/model-view-proxy-models.html#custom-filtering-models
But as far as I see, Benjamin has found a much simpler solution, if you
only
want so hide columns. I would test his suggestion first and check if it
fits
your needs.
Christian

On Thu, May 6, 2010 at 5:15 PM, Philippe Crave
<[email protected]>
wrote:

looks like that I have to do a QAbstractTableModel for each QTableView,
no
?
sounds strange, I thought that the idea was to have only one model
that will serve data to several views.

2010/5/6 Philippe Crave <[email protected]>:

Hello,

I am reading the chapter 14 of Mark Summerfield.
I work with custom model and custom delegate.

in the sample from the book, we have 1 tableView linked to one model.
It's simple to get 2 tableView linked to the same model.

my Model has got 4 columns.
I would like that TableView_1 show the 2 first column only, and
TableView_2 show the 2 others.

what is the good way to do it ?
actually, the content of the model will be given to the view in the data(self, index, role=Qt.DisplayRole) method from the custom model. is there a way to know which view needs data in that data method ?

thanks,

Philippe

_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt



_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt


_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to