2010-04-10 45 views
2

我有一個表視圖顯示Qt - 如何在QsqlRelationalTableModel中添加計算列?

部分的描述,數量,價格

而且我有一個模型/視圖使用此代碼

model = new QSqlRelationalTableModel(this); 
model->setTable("parts"); 
model->setRelation(3,QSqlRelation("part_tbl","part_id","part_desc")); 

model->select(); 
ui->tableView->setModel(model); 

我需要添加一個新列,顯示數量*價格在表格視圖中。重要的是要知道自己使用QsqlRelationalTableModel

幫助表示讚賞,先謝謝

+1

@ user289175:你看過Qt Demo示例*關係表模型示例*? – mosg 2010-04-10 15:07:53

+0

是的,我明白了。但這個例子並沒有回答我的問題。 讓我們再次重新解釋我的例子。 我有一個數據庫表有四列 PART_ID part_desc到part_tbl 價格 -quantity 我要到這就是顯示器的價格(乘)數量添加一個虛擬列作爲一個整體 – user289175 2010-04-11 05:49:25

+0

任何幫助,請有關? – user289175 2010-04-12 08:00:08

回答

2

我認爲處理這個你最好的選擇是讓任何一個模型,繼承QSqlRelationalTableModel,或一個充當代理(很重要幷包含模型的成員)。您的新模型將添加額外的列,並且在爲該列請求數據時,請使用其他列中的數據來計算所需的數據。

+0

首先,我想向您致以衷心的感謝。 事實上,我試圖用很長的路要解決這個問題。我已經在數據庫中創建了一個名爲total的空列,現在我試圖將可編程性添加到空列中。非常感謝您的幫助。 – user289175 2010-04-17 22:22:55

+0

OP,這是否解決了您的問題?我有一個類似的問題。我已經創建了代理模型,其中包含額外的列,但我無法爲其設置數據。 – jetimms 2011-09-06 01:19:44