2011-08-02 56 views
2

我需要做一個時間表是這樣的:PyQt的時間軸桂

enter image description here

使用PyQt的的圖形用戶界面。

基本上,這個時間線是一輛車。在時間軸上,汽車生產的所有階段都是按照日期進行的,左側是涉及該特定階段的團隊。

即測試階段從1月21日開始到2月4日結束。它的團隊是碰撞測試團隊和拆除工作人員

生產階段(設計,開發,測試,市場營銷等)需要可擴展,所以如果您拖動設計生產階段的結束從第8 1月的1月到10日,Production的所有其他階段都會得到2天的抵消。

任何想法,reccomendations,經驗,建議將不勝感激。

很多感謝您花時間閱讀本文。

+0

由於這還沒有得到答案,一個快速的建議 - 在PyQt中從頭開始寫這聽起來像很多時間和精力。簡單的選項可能是一個電子表格。如果您需要更多特定功能,請搜索以查看是否已有甘特圖軟件。 –

+0

對於那些後來發現的人,我首先嚐試QTableWidget,然後使用QStandardItemModel或QAbstractItemModel來QTableView。坦率地說,我可能只是在Excel中做到這一點。 :) – neuronet

回答

2

當然,有很多方法可以做到這一點,但我會使用QGraphicsView。我主要使用C++/Qt,因此無法評論在Python中這將是多麼容易。

我會讓每個「stage」成爲一個QGraphicsItem,並將QsgraphicsView背景作爲Months/Days。我會重寫圖形項目的鼠標事件以顯示合適的遊標,並在鼠標向下/鼠標移動事件時適當調整它及其鄰居的大小。

這將是一個相當數量的工作。更簡單的方法當然是使用現有的控制。一個快速的網絡搜索揭示了ICS的KD甘特(link),這是非免費的,但似乎有你需要的設施。

+0

我看了一下,它似乎我不得不使用QGraphicsView,但現在我已經讀了你的答案我definatley將會走這條路。感謝您的建議P) – Jared

+0

沒問題。我最近做了一些類似的事情,發現[彈性節點示例](http://doc.qt.nokia.com/latest/graphicsview-elasticnodes.html)對於展示如何繪製背景以及實現圖表上的項目。 – docsteer