使用treeview怎麼實現多個節點顯示數據(100分)

  • 主题发起人 主题发起人 kingson
  • 开始时间 开始时间
K

kingson

Unregistered / Unconfirmed
GUEST, unregistred user!
我寫了一個人事考勤系統,想用treeview來實現部門+員工名,請問如何實現:
我建立三個表:
yjbm:yjbm_id,yjbm_name(一級部門)
ejbm:ejbm_id,yjbm_id,ejbm_name(二級部門)
employees:empid,yjbm_name,ejbm_name,name,worknum,cardnum,birthday,sex,marry,in_date,
jg,zw,zc,ic_id,telphone,degree,address(職員表)
我想實現這樣的結構:
+一級部門
+二級部門
-張三
-李四
-王五
例子如下:
+管理部
+開發部
-小黃
-小紅
-小張
請問高手怎麼實現?最好有示例源碼?











 
不用建立這么多表﹐一個表搞定部門
 
先把treeview setfocus 然后编写鼠标点击节点时触发的事件。
if (currentNode.Level=1) then
begin
Tabel.name:=currentNode.text;
end;
以下同理,试试吧,我是这样做的。不过我刚学delphi,请多指教!
 
1.部門不用建這麼多表,一表就好,如下:
部門編號,部門名稱,上級部門編號,...
2.員工資料建表如下:
部門編號,員工姓名....
3.生成結構樹時用如下sql:
select a.部門編號,a.上級部門編號,b.員工姓名 from 部門資料 a
left join 員工資料 b
on a.部門編號=b.部門編號
4.用ExpressQuantumGrid中的TdxDBTreelist二分鐘搞定.
ExpressQuantumGrid可到網上搜一下,或mail給你。不過有點大。

 
第一:你必须确定你的编码格式,每一级占多少位
第二:写一个解码函数,用于计算层次
第三:写一个显示函数,用于显示数据
 
建立一個表來搞定部門,是不是這樣:
create table department(
dep_id int not null,//部門編號
dep_name char(16) not null,//部門名稱
parent_id int null,//上級部門編號
parent_name char(16) null//上級部門名稱)


 
dxdbtreeview好用
 
后退
顶部