全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1548
推到 Plurk!
推到 Facebook!

請問如何動態控制, 放置在TDBCtrlGrid上面的元件之可視狀態

答題得分者是:P.D.
JackYang1720
一般會員


發表:1
回覆:1
積分:0
註冊:2007-12-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-03-31 02:42:22 IP:202.86.xxx.xxx 訂閱
各位先進:
小弟想動態的控制,放置在TDBCtrlGrid上元件的可視狀態。舉例來說:我在TDBCtrlGird 放置了 3 個 TDBEdit 元件,在某些特定的狀態之下,小弟想隱藏其中某一個 TDBEdit 元件,卻不知如何設計。

小弟曾利用 TDBCtrlGrid 的 OnPaintPanel 事件來處理,效果不是很好,無法很精準控制元件顯示及隱藏的狀況,小弟將程式碼列在下面,請各位先進各位高手不吝賜教, 謝謝!


procedure TForm1.DBCtrlGrid1PaintPanel(DBCtrlGrid: TDBCtrlGrid; Index: Integer);
begin
with DBCtrlGrid.DataSource.DataSet do
begin
if not Active or IsEmpty then exit;
DBEdit1.Visible := FieldByName('Type').AsString = '5';
Label1.Visible := DBEdit1.Visible;
Label2.Visible := DBEdit1.Visible;
end;
end;
------
Hi
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-04-02 23:20:15 IP:61.67.xxx.xxx 未訂閱
你要的功能, 在DBCtrlGrid 上似乎做不到, 就目前我所知道的功能上是沒有的, DBCtrlGrid 元件是針對泛用型的元件, 也就是你在CrtlGrid 有五組row, 但你實際設計上只是針對在第一個row上拖放其他db元件, 其他四組則是比照辦理, 也就是第一筆的資料你設定visibie=false , 那其他四組也會跟著為false, 沒有辦法做到在某一個值之上要顯示, 或不顯示, 可能要找看看其他第三方控件有沒有提供這樣的癸花寶典了, 或者這其中還隱蔵"不可說的祕密", 有待其他達人發掘.
JackYang1720
一般會員


發表:1
回覆:1
積分:0
註冊:2007-12-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-04-03 00:41:17 IP:122.100.xxx.xxx 訂閱
感謝版主大大的解惑,小弟再試試看別的方式!
------
Hi
系統時間:2024-04-29 15:44:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!