關於數據庫 |
尚未結案
|
friendly
一般會員 發表:7 回覆:3 積分:2 註冊:2004-10-17 發送簡訊給我 |
|
pcboy
版主 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
這裡有範例
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=17338&ARCHIVE= DBLookupListBox 顯示查閱列示方塊,而該列示的內容是根據一欄位值而自其他資料集查詢而來。 DBLookupComboBox 顯示查閱組合方塊,其列示的內容是根據一欄位值而自其他資料集查詢而來的。也可以直接輸入資料,就如標準的資料感知編輯方塊。 再提供一個範例 :
unit untMain; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, DBCtrls, DB, DBTables, StdCtrls, Mask, ComCtrls, ExtCtrls, Grids, DBGrids, Buttons; type TfrmMain = class(TForm) Panel2: TPanel; Panel1: TPanel; PageControl1: TPageControl; TabStudent: TTabSheet; TabKarakter: TTabSheet; TabFag: TTabSheet; TabPost: TTabSheet; DBNavigator1: TDBNavigator; SpeedButtonPrint: TSpeedButton; SpeedButtonPreview: TSpeedButton; Label12: TLabel; Label13: TLabel; DBEdit7: TDBEdit; DBEdit8: TDBEdit; Label16: TLabel; Label18: TLabel; DBGrid2: TDBGrid; Label19: TLabel; Label20: TLabel; DBText1: TDBText; DBText2: TDBText; Label21: TLabel; Label22: TLabel; Label23: TLabel; DBLookupListBox2: TDBLookupListBox; Label24: TLabel; Label25: TLabel; DBEdit14: TDBEdit; DBEdit15: TDBEdit; DBEdit16: TDBEdit; DBEdit17: TDBEdit; DBGrid3: TDBGrid; TabSheet1: TTabSheet; Label1: TLabel; DBEdit9: TDBEdit; DBEdit1: TDBEdit; Label2: TLabel; Label3: TLabel; DBEdit2: TDBEdit; DBEdit3: TDBEdit; Label4: TLabel; Label5: TLabel; DBEdit4: TDBEdit; DBLookupListBox3: TDBLookupListBox; Label26: TLabel; Label27: TLabel; Label28: TLabel; Label29: TLabel; Label31: TLabel; DBLookupComboBox2: TDBLookupComboBox; DBEdit18: TDBEdit; DBEdit19: TDBEdit; DBEdit21: TDBEdit; GroupBox1: TGroupBox; Label6: TLabel; DBEdit13: TDBEdit; Label14: TLabel; DBLookupComboBox3: TDBLookupComboBox; DBEdit10: TDBEdit; Label10: TLabel; Label11: TLabel; DBEdit11: TDBEdit; DBEdit5: TDBEdit; Label7: TLabel; Label8: TLabel; DBEdit20: TDBEdit; Label9: TLabel; DBLookupComboBox4: TDBLookupComboBox; GroupBox2: TGroupBox; DBLookupComboBox1: TDBLookupComboBox; Label15: TLabel; Label17: TLabel; DBLookupListBox1: TDBLookupListBox; procedure PageControl1Change(Sender: TObject); procedure DBLookupListBox3Click(Sender: TObject); procedure SpeedButtonsPrintClick(Sender: TObject); private { Private declarations } public { Public declarations } GlobDataSource : TDataSource; end; var frmMain: TfrmMain; implementation {$R *.DFM} uses untDataModule, untVitnemal, untKlasseListe; procedure TfrmMain.PageControl1Change(Sender: TObject); var Ind : Integer; Sheet : TTabSheet; begin Sheet:=(Sender as TPageControl).ActivePage; ind:=DataModule1.FindComponent('DataSource' Sheet.Caption).ComponentIndex; GlobDataSource:=DataModule1.Components[ind] as TDataSource; DBNavigator1.DataSource:=(DataModule1.Components[ind]) as TDataSource; SpeedButtonPrint.Enabled:=(Sheet.PageIndex=1) or (Sheet.PageIndex=0); SpeedButtonPreview.Enabled:=(Sheet.PageIndex=1) or (Sheet.PageIndex=0); end; procedure TfrmMain.DBLookupListBox3Click(Sender: TObject); begin DBLookupComboBox1.KeyValue:=DataModule1.QueryKlasseKLASSE.AsString; end; procedure TfrmMain.SpeedButtonsPrintClick(Sender: TObject); begin Case PageControl1.ActivePage.PageIndex of 1 : begin QRMDForm:=TQRMDForm.Create(self); If (sender as TSpeedButton).tag=1 then QRMDForm.QuickReport.Preview else QRMDForm.QuickReport.Print; QRMDForm.Free; end; 0 : begin QRMDForm1:=TQRMDForm1.Create(self); If (sender as TSpeedButton).tag=1 then QRMDForm1.QuickReport.Preview else QRMDForm1.QuickReport.Print; QRMDForm1.Free; end; end; end; end.********************* 如果您滿意答案,請結案 *********************
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案! 子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問! |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ DBLookupComboBox元件和DBLookupListBox元件的作用是可以從其它資料表中擷取資料做為當前對應資料表的來源﹐其設定方法很簡單﹐只需通過以下幾個步驟的設定即可﹕
一﹒設定其DataSource屬性和DataField屬性﹐此兩個屬性意義相同于普通的資料感知元件﹒
二﹒設定其ListSource屬性﹐此屬性作用于連接其它資料來源﹐通常會設定為另一個已經連接上資料表的DataSource元件﹒
三﹒設定其ListField屬性﹐此屬性作用于指定擷取來源資料表中的欄位名稱﹒
四﹒設定其KeyField屬性﹐此屬性作用于指定兩個資料表間的關聯性依据欄位名稱. =================================
有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗
================================
------
忻晟 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |