2010-10-18 74 views

回答

0

看看StarUML的源代碼。它是一個完整的圖表工具,它直接集成到IDE中。誠然,這是UML圖,而不是流程圖,但你應該能夠從中收集很多想法。該項目已經過渡到Java,但仍然有原始的Delphi代碼作爲可下載的zip文件。

如果您打算創建商業產品,請記住它是根據GPL授權的。

0

根據你的時間限制,它的真的沒有那麼難使用TCanvas中的繪圖方法自己創建它。 (或者爲了更冒險,直接使用GDI/GDI +/Direct2D)。

這樣做的好處是,您不再依賴於第三方組件,可以使其完全符合您的需求,而無需讓您的應用適合組件的思維方式。另外,自從您編寫它以來,沒有授權許可證。

不利的一面是,你需要自己一切。

像流程圖這樣的繪圖應用程序的關鍵實際上是存儲數據。每個形狀應該是一個具有幾個方法(如draw())的對象的實例。不同的形狀應該有不同的派生類,每個派生類都有自己的重載draw()方法來繪製該形狀。形狀可以存儲在TList或類似的容器中。要繪製文檔,請迭代對象列表並調用其繪製方法。

+0

,我在問什麼,你有什麼想法我應該讀嗎?任何樣品或任何東西讓我走向正確的方向? – killercode 2010-10-19 22:03:38

+0

也應該用我應該會反分析?所以我不浪費時間重寫;謝謝 – killercode 2010-10-19 22:32:26

+0

曾經有&可能仍然是一個簡單的繪圖示例,我相信隨Delphi一起展示瞭如何繪製形狀以響應鼠標操作。我不知道它是否仍然存在,因爲我沒有安裝它們。我不知道任何其他介紹基本的德爾福圖形,雖然我敢肯定,如果你在網上看,你會發現噸。基本上,你想學習如何使用TCanvas及其方法。每個paint box/timage都有自己的畫布對象 - 您只需設置畫筆和線條顏色,並告訴它繪製矩形,多邊形等等。通常,您可以在OnPaint事件中執行此操作。 – GrandmasterB 2010-10-20 06:17:00