請問DBCtrlGrid如何做到DBGrid.SelectedField的功能? |
答題得分者是:Mickey
|
ying0515
中階會員 發表:90 回覆:168 積分:81 註冊:2003-01-04 發送簡訊給我 |
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
引言: 請問DBCtrlGrid如何做到DBGrid.SelectedField的功能? 在DBCtrlGrid好像找不到SelectdField,如何動態 取得焦點欄位並作存取?感謝回應. DelphiSample Code as following : TForm1 = class(TForm) ... procedure DBControlsOnEnter(Sender: TObject); private { Private declarations } selectfield : TField; public ... implementation procedure TForm1.FormCreate(Sender: TObject); begin DBEdit2.OnEnter := DBControlsEnter; end; procedure TForm1.DBControlsEnter(Sender: TObject); begin selectfield :=TDBEdit(Sender).Field; showmessage(selectfield.FieldName); end;/* 使用中文很辛苦,中華男兒當自強 */ |
ying0515
中階會員 發表:90 回覆:168 積分:81 註冊:2003-01-04 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
引言: 請問Mickey您的範例中 DBControlsOnEnter(Sender: TObject); or DBEdit2.OnEnter := DBControlsEnter; 是否需要放入或宣告元件? Compile時出現 [Error] Cdb_Unit1.pas(73): Undeclared identifier: 'DBControlsEnter' 已在程式中放入TDBCtrlGrid Delphiprocedure DBControlsEnter 須宣告 : 不好意思打錯字. TForm1 = class(TForm) ... procedure DBControlsEnter (Sender: TObject);DBEdit2 是我測試時,放置於 TDBCtrlGrid 的 TDBEdit. 原理是, 當 Form create 時 Assign DBEdit2.OnEnter event. 我只是提供 "Sample" ..., Coding 的樂趣與成就留給你囉 ! /* 使用中文很辛苦,中華男兒當自強 */ 發表人 - Mickey 於 2003/02/12 14:32:01 發表人 - Mickey 於 2003/02/12 14:34:02 |
ying0515
中階會員 發表:90 回覆:168 積分:81 註冊:2003-01-04 發送簡訊給我 |
小弟Try了Mickey您的範例Compile還是出現error!
[Error] Unit1.pas(37): Undeclared identifier: 'DBControlsEnter'
不知問題出在哪?
--------------------------------------------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, Mask, DBCtrls, DB, dbcgrids, DBTables;
type
TForm1 = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBCtrlGrid1: TDBCtrlGrid;
Table1BDEDesigner: TStringField;
Table1BDEDesigner2: TStringField;
Label1: TLabel;
DBEdit1: TDBEdit;
Label2: TLabel;
DBEdit2: TDBEdit;
procedure DBControlsOnEnter(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
DBEdit2.OnEnter := DBControlsEnter; <------Compile error
end;
procedure TForm1.DBControlsEnter(Sender: TObject);
begin
selectfield :=TDBEdit(Sender).Field;
showmessage(selectfield.FieldName);
end;
end. Delphi
------
Delphi |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
引言: 小弟Try了Mickey您的範例Compile還是出現error! [Error] Unit1.pas(37): Undeclared identifier: 'DBControlsEnter' 不知問題出在哪? -------------------------------------------------------- unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Mask, DBCtrls, DB, dbcgrids, DBTables; type TForm1 = class(TForm) Table1: TTable; DataSource1: TDataSource; DBCtrlGrid1: TDBCtrlGrid; Table1BDEDesigner: TStringField; Table1BDEDesigner2: TStringField; Label1: TLabel; DBEdit1: TDBEdit; Label2: TLabel; DBEdit2: TDBEdit; procedure DBControlsEnter(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } selectfield : TField; public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin DBEdit2.OnEnter := DBControlsEnter; <------Compile error end; procedure TForm1.DBControlsEnter(Sender: TObject); begin selectfield :=TDBEdit(Sender).Field; showmessage(selectfield.FieldName); end; end. Delphi/* 使用中文很辛苦,中華男兒當自強 */ 發表人 - Mickey 於 2003/02/12 14:49:31 |
ying0515
中階會員 發表:90 回覆:168 積分:81 註冊:2003-01-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |