TreeView DataWindow設計(ㄧ)
開發工具:powerbuilder 6.5 雖然powerbuilder 10.5已經提供了TreeView DataWindow的功能了 畫面也是標準的DataWindow介面,感覺上也很好用?(我還沒用過啦)。可是呢,目前公司提供的工具最高也僅到PB10而已,大多數的程式和工具也都是維持在PB6.5的版本;而且許多朋友也是還在使用PB6.5苦撐...唉!公司預算有限嘛!能用且用囉。 這讓我興起想要建立自己的TreeViewDataWindow物件的想法。雖然說powerbuilder本身就有treeView的物件,但是那不是DataWindow的型態,所以列印的話效果都不好,也很難控制。 難怪powerbuilder敢誇海口DataWindow是MIS開發報表最方便的工具。 由於DataWindow由於名稱過長,因此文中如果有遇到DataWindow如果有遇到字樣的可能會以DW表示。 《一》首先,先來了解一下樹狀結構吧,樹狀結構顧名思義,一定跟樹....有關係 XD 如果把它的葉子全部脫光光........ 這樣只剩下之枝幹與枝節,然後再把它右轉90度,是不是很像下面的圖.... 那麼這就是所謂樹狀結構圖了,具有相同性質的"節點",每個節點底下還可以再分更多節點,由於看起來像樹一樣,所以就稱為樹狀結構。當然,如果你要表現成TreeView的話,這樣是不行的,因為treeView比較接近條列式,像是下圖: 比較井然有序,比較條列,大部份若要製作成報表,就要使用此種表現方式的報表比較容易看懂。以上的簡單說明主要牽涉到資料存放的方式,如果你對樹狀結構不夠明瞭,那麼當下面設計TreeView的資料結構時候,你就會很難理解。 《二》了解你的開發工具,雖然學PB的很多人都會使用DataWindow,但是對於DataWindow的運作原理卻不是很熟悉。當然這裡不會介紹DataWindow的原理,而是利用其特性去建構成我們要展現的DataWindow。 這個物件主要是裡用DataWindow的屬性建構,因此主要使用modify這個指令來建構DWO(DataWindow Object)。DataWindow本身可說是一個Paint Container,而這個Container包含了幾個區塊:group、detail、header、fotter、summary,