物件型別轉換問題 |
答題得分者是:ha0009
|
xBug
一般會員 發表:27 回覆:17 積分:8 註冊:2003-06-10 發送簡訊給我 |
我在畫面上放一個 BUTTON 元件要控制 TDataSet 元件做 INSERT 動作,我在 BUTTON 的 onClick 事件撰寫以下程式碼,但發現、DELPHI VCL 架構中,資料感知元件並沒有固定的父階元件,故必須針對不同 ActiveControl 做不同的 IF 判斷。 我想請教各位先進,就型別轉換部分是否有較佳寫法?
if ActiveControl is TDBEdit then TDBEdit(ActiveControl).DataSource.DataSet.Insert; if ActiveControl is TDBComboBox then TDBComboBox(ActiveControl).DataSource.DataSet.Insert;-------------------------------- 給我一個支點,我可以撐起整個地球 |
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
你好:
You can try it < class="code">
uses
TypInfo; procedure TForm1.Button1Click(Sender: TObject);
var
ds : TDataSource;
begin
if IsPublishedProp (ActiveControl, 'DataSource') then begin
ds := TDataSource (GetObjectProp (ActiveControl, 'DataSource'));
if ds <> nil then begin
ds.DataSet.Insert;
end;
end;
end;
|
xBug
一般會員 發表:27 回覆:17 積分:8 註冊:2003-06-10 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |