trzchecktree的使用
rzchecktree1.fullexpand;展開所有的節點;rzchecktree1.fullcollapse關閉所有展開的節點;
rzchecktree1.itemstate[i] := csunchecked 取消選擇 這句可以用乙個for迴圈將所有的都設定為csunchecked ;rzchecktree1.fullexpand;展開所有的節點;rzchecktree1.fullcollapse關閉所有展開的節點;
rzchecktree1.itemstate[i] := csunchecked 取消選擇 這句可以用乙個for迴圈將所有的都設定為csunchecked ;
rzchecktree1.fullcollapse;
for i:=0 to rzchecktree1.items.count-1 do
rzchecktree1.itemstate[i]:=csunchecked ;
1. 判斷狀態:
if rzchecktree1.selected.stateindex = 2 then
//則為選中狀態
else if rzchecktree1.selected.stateindex = 1 then
//則為未選中狀態
else if rzchecktree1.selected.stateindex = 3 then
//則為未全選狀態
或者
if rzchecktree1.itemstate[i] = csunchecked then //為未選中狀態
if rzchecktree1.itemstate[i] = cschecked then //為選中狀態
2: 設定
rzchecktree1.itemstate[i] := csunchecked //為未選中狀態
rzchecktree1.itemstate[i] := cschecked //為選中狀態
許可權樹的建立
procedure createpermissionstree(dataset: tadoquery; tree: trzchecktree;
const tablename, aid, aname, quanxian: string);
const
id_dept = 2;
varnlevel: integer;
pnodes: array[0..1023] of ttreenode;
lpid, lpname, s: string;
begin
if dataset = nil then exit;
if tree = nil then exit;
if tablename = '' then exit;
pnodes[0] := nil;
tree.items.clear;
with dataset do
begin
close;
sql.clear;
s := format('select * from %s order by %s', [tablename, aid]);
sql.text := s;
open;
if isempty then exit;
first;
while not eof do
begin
lpid := findfield(aid).asstring;
lpname := findfield(aname).asstring;
nlevel := length(lpid) div id_dept;
pnodes[nlevel] := tree.items.addchild(pnodes[nlevel - 1], lpname);
if findfield('quanxian').asboolean then
pnodes[nlevel].stateindex := 2
else pnodes[nlevel].stateindex := 1;
next;
end;
end;
end;
許可權樹的使用
許可權載入 許可權遍歷 許可權新增 許可權刪除 1 2 3 trevzqx.nodes.clear 清空樹節點 settreeview trevzqx,0 總許可權樹載入 trevzqx.expandall 展開根節點 繫結資料庫許可權樹載入 1 2 3 4 5 6 7 8 9 10 11 12 1...
許可權設計 以及 樹的儲存
平時看到各位園子的朋友真的很厲害,設計了很多關於許可權管理的東西,很羨慕,但同時也覺得在一些小型專案上,那樣的設計是否有點設計過度呢 其實這也說不清,可能是自己資歷尚淺,還沒看明白各位高人的設計 自己也寫了個,帖出來請教下園子的各位朋友 用pd 弄了個圖,這裡想說明的是關於部門表和模組表的 索引 字...
JAVA遞迴生成許可權樹
遞迴生成乙個許可權樹,可通過以下過程實現 每條許可權有自己的id 父節點parentid 許可權名稱name 許可權還擁有次級許可權children。許可權表 create table module id int 10 not null auto increment comment 模組id par...