隨筆 - 6  文章 - 129  trackbacks - 0
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(14)

          隨筆檔案(6)

          文章分類(467)

          文章檔案(423)

          相冊(cè)

          收藏夾(18)

          JAVA

          搜索

          •  

          積分與排名

          • 積分 - 827295
          • 排名 - 49

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          PFC中關(guān)于TreeView的用法講解

          轉(zhuǎn)自:http://www.pb9.com.cn/showtopic-190.html

          PFC中關(guān)于TreeView的用法講解

          (lily_banana)

          u_tvs

          描述:
          基于 TreeView 可視用戶對(duì)象祖先。該對(duì)象采用 數(shù)據(jù)存儲(chǔ)(DataStores)顯示TreeView 的數(shù)據(jù)。
          U_tvs 是一個(gè)自更新的對(duì)象。
          對(duì)應(yīng)的庫(kù):
          PFCMAIN.PBL
          PFEMAIN.PBL
          對(duì)象關(guān)系:
          Object relationships
              PFC 可視用戶對(duì)象被設(shè)計(jì)用于從w_master繼承來(lái)的窗口。U_tvs 也用于:
              m_tv
              n_cst_infoattrib
              n_ds
              n_cst_luw
              n_cst_tvsrv
              n_cst_tvsrv_levelsource
              n_cst_print
          用法:
          在窗口中用該可視用戶對(duì)象代替PowerBuilder的 TreeView 控件。 U_tvs 事件的腳本可以和PFC的菜單進(jìn)行集成。
          要使用 u_tvs:
          1    在窗口中添加一個(gè)u_tvs用戶對(duì)象控件。
          2    根據(jù)需要使TreeView 的服務(wù)可用:
          this.of_SetPrint(TRUE)
          this.of_SetLevelSource(TRUE)
          this.of_SetBase(TRUE)
          3    為樹的每一層指定數(shù)據(jù)源:
          String  ls_sql
          Integer  li_return
             
          ls_keys[1] = "dept_id"
              this.inv_levelsource.of_Register(1, "dept_name", "", "d_deptlist", SQLCA, "")
                ls_keys[1] = "emp_id"
          this.inv_levelsource.of_Register(2, "emp_lname", ":parent.1.dept_id",  &
                "d_empbydept", SQLCA, "")
          4    根據(jù)需要為樹脂定其余的顯示信息:
          this.inv_levelsource.of_SetPictureColumn(1, "1")
          this.inv_levelsource.of_SetSelectedPictureColumn(1,"2")
          this.inv_levelsource.of_SetPictureColumn(2, "4")
          this.inv_levelsource.of_SetSelectedPictureColumn(2, "5")

          5    檢索 TreeView的第一行:
          this.event pfc_populate(0)
          6    擴(kuò)展pfc_Retrieve 事件使檢索參數(shù)生效:
          Any  la_args[20]
          Integer  li_level

          IF IsValid(inv_levelsource) THEN
                      li_level = this.of_GetNextLevel(al_parent)
                      this.inv_levelsource.of_GetArgs(al_parent, li_level, la_args)
          END IF
          Return this.of_Retrieve(al_parent, la_args, ads_data)

          7    根據(jù)需要調(diào)用u_tvs 的其他函數(shù)。
          要獲取關(guān)于TreeView 的更多信息,參見(jiàn)《PowerBuilder User's Guide》

          n_cst_tvsrv_print

          描述:
          TreeView 打印服務(wù)

          對(duì)應(yīng)的庫(kù)
          PFCAPSRV.PBL
          PFEAPSRV.PBL

          用法:

          要使用該系統(tǒng):

          1    調(diào)用u_tvs of_SetPrint 函數(shù)激活該服務(wù):
          tv_1.of_SetPrint(TRUE)
          2    調(diào)用of_PrintTree 函數(shù)來(lái)打印 TreeView 數(shù)據(jù):

          String  ls_levelpicts[10]
          String  ls_levelselpicts[10]

          ls_levelpicts[1] = "dept.bmp"
          ls_levelpicts[2] = "emp.bmp"
          ls_levelselpicts[1] = "deptsel.bmp"
          ls_levelselpicts[2] = "empsel.bmp"
          tv_1.inv_print.of_PrintTree(0, TRUE, ls_levelpicts, ls_levelselpicts)

          of_Register 函數(shù):
            語(yǔ)法1 通過(guò)一個(gè)DataWindow 對(duì)象來(lái)顯示數(shù)據(jù)。
          描述:
              通過(guò)檢索DataWindow對(duì)象的行來(lái)建立TreeView的各級(jí)數(shù)據(jù)層
          范圍:
          Public
          語(yǔ)法:
          tvcontrol.instancename.of_Register ( level, labelcolumn, retrievespec,    dwobject, trans, filterspec )

          參數(shù)描述:
          tvcontrol        u_tvs-based TreeView 控件的實(shí)例
          instancename    n_cst_tvsrv_levelsource的實(shí)例 ( u_tvs 的確省值為 inv_levelsource)
          level            Integer 指定TreeView 數(shù)據(jù)的層次及數(shù)據(jù)
          labelcolumn    String 指定u_tvs 用于TreeView項(xiàng)標(biāo)簽的dwobject 的列名。
          retrievespec    String  包含用于dwobject 檢索條件
          dwobject        String 指定用于數(shù)據(jù)檢索的 DataWindow 對(duì)象
          trans            N_tr 用于檢索dwobject的事務(wù)對(duì)象。如果該參數(shù)未指定,則dwobject必須已含有數(shù)據(jù)。
          filterspec          String 包含需要的過(guò)濾條件

          返回值
          Integer. 具體如下:
          ? 1  成功
          ? -1  參數(shù)有效性錯(cuò)誤
          ? -2  Dwobject 沒(méi)有指定鍵列(key columns)
          ? -3  上一層被標(biāo)記為循環(huán)。
          ? -4  Column level datatype was not in the data source
          ? -5  為數(shù)據(jù)源設(shè)置事務(wù)對(duì)象出錯(cuò)
          ? -7  Cache 注冊(cè)錯(cuò)誤

          用法:
              TreeViwe的每一層調(diào)用該函數(shù)一次。
          檢索參數(shù)的格式如下:
          :scope.level.column

          where:

          ? Scope 指定層(Level)或者父層(Parent):
          ? Level  絕對(duì)層數(shù)
          ? Parent  和當(dāng)前層相關(guān)的數(shù)

          ? 根據(jù)Scope指定的數(shù)的性質(zhì)不同,Level 來(lái)制定一個(gè)絕對(duì)或相對(duì)層數(shù)。
          Scope 指定    Level 指定
          Level
              你指定的絕對(duì)數(shù)。例如::level.1.emp_name 表示檢索參數(shù)來(lái)自于祖先的-1層的emp_name 列

          Parent    你指定的項(xiàng)相對(duì)于當(dāng)前層的值。例如, :parent.2.emp_name 表示檢索參數(shù)來(lái)源于上兩層祖先的emp_name 列

          ? Column 指定含有用于檢索參數(shù)值的DataWindow 對(duì)象的列名



          of_SetPictureColumn 函數(shù):

          描述:
          指定未選中時(shí)的圖標(biāo)
          范圍:
          Public
          語(yǔ)法:
          tvcontrol.instancename.of_SetPictureColumn ( level, column )

          參數(shù)描述:
          tvcontrol        u_tvs-based TreeView 控件的實(shí)例
          instancename    n_cst_tvsrv_levelsource的實(shí)例 ( u_tvs 的確省值為 inv_levelsource)
          level            Integer 指定被設(shè)置圖標(biāo)的層號(hào)
          column        String 指定下述之一:
          ? u_tvs 用于找到圖片的DataWindow 對(duì)象的列名,該列可以包括一個(gè)文件名或者一個(gè)值,指示 u_tvs 來(lái)找到 TreeView的圖片序列號(hào)
          ? 值, 指示 u_tvs 來(lái)找到 TreeView的圖片序列號(hào)

          返回值:
          Integer. 1,成功;-1,失敗。

          用法:
          調(diào)用該函數(shù)前需要調(diào)用of_Register函數(shù)


          posted on 2010-07-04 10:40 Ke 閱讀(805) 評(píng)論(0)  編輯  收藏 所屬分類: powerBuilder
          主站蜘蛛池模板: 长宁县| 独山县| 河间市| 宜都市| 冷水江市| 万安县| 永州市| 洛南县| 沛县| 姜堰市| 忻州市| 安远县| 合江县| 永城市| 岑溪市| 高安市| 江源县| 容城县| 芒康县| 红安县| 二连浩特市| 利川市| 密云县| 揭东县| 扎赉特旗| 永胜县| 新民市| 巫山县| 凉城县| 石阡县| 讷河市| 大英县| 丰宁| 金湖县| 西华县| 德钦县| 澳门| 抚松县| 合作市| 顺义区| 耿马|