TreeView控制開啟Frame

2021-10-05 08:51:13 字數 1894 閱讀 2727

最近在學習treeview控制項,參考了網的的一些資料在c++builder10.1上做了個demo。

先來個效果圖:

擺放控制項什麼的就不多說了,主要說下思路:

1、要在主視窗上的panel中顯示frame,於是設定了乙個tframe *frame變數來傳遞frame。

2、treeview用cb中的編輯器設計時做好。

3、利用action的caption屬性來對應treeview的節點上的text。

具體的程式如下:

**件:

public

:// user declarations

__fastcall tform1

(tcomponent* owner)

; tframe *frame;

string caption;

void __fastcall showframe

(string aname)

;

cpp檔案:

1.自定義showframe(string aname)函式:

void __fastcall tform1::

showframe

(string aname)

actionlist1-

>actions[i]

->

execute()

; frame-

>left = panel1-

>left ;

//加上以後可以減少切換時的閃爍

frame-

>top = panel1-

>top ;

frame-

>width = panel1-

>width ;

frame-

>height = panel1-

>height ;

frame-

>align = alclient;

frame-

>parent = panel1-

>parent ;

//顯示在form上的panel中}}

}

2.在treeview的onchange中切換頁面:

void __fastcall tform1::

treeview1change

(tobject *sender, ttreenode *node)}}

}

3.每個action對應乙個frame

void __fastcall tform1::

acfrframeoneexecute

(tobject *sender)

//-----------------------------

void __fastcall tform1::

acfrframeoneexecute

(tobject *sender)

4.如果按鈕切換frame,則要用到對應的action的caption

void __fastcall tform1::

toolbutton6click

(tobject *sender)

最後是網上找到的調整trview的行間距的**,我直接複製過來的。調整人後面的數字就可以調整行間距了。

void __fastcall tform1::

formshow

(tobject *sender)

第一次寫部落格,主要是為了留下做個備份,有不到之處還請多多指正!

JS控制TreeView的結點選擇

網上有很多控制treeview的checkbox選中,但是自己嘗試的時候,要麼報錯,要麼不可行。以下這種寫法是經過驗證有效的,僅作參考,思維比較巧妙!tree 指令碼 這個指令碼的寫法巧妙運用生成的頁面原始檔中checkbox與其子結點div之間的關係!那麼,只需要在註冊一下觸發事件即可 prote...

treeview多資料載入 展開關閉控制

思路 1,載入根節點以及根節點的二級目錄 2,使用expand事件,獲取選中節點id,使用 getnodefromindex 方法獲取到treenode 3,遍歷獲取到的treenode節點的子節點,並賦值。這樣,擴充套件了乙個node就會把這個node的子node的子node的內容填充進來,保證了...

mongodb 開啟許可權控制

問題 安裝了mongodb之後,發現了乙個問題,建立乙個普通的read許可權使用者,他居然可以刪除 root賬號,而且任意建立各種賬號修改各種賬號。傻眼,這樣怎麼能用。解決 修改配置檔案 將security.authorization改為enabled,預設值是disabled,然後重啟mongo ...