




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、EhLib控件的使用說明一. DBGridEh組件: 1. 屬性。2. 使用統(tǒng)計欄功能(1 設(shè)置統(tǒng)計欄行數(shù),將DBGridEh.FooterRowCount := 1(2 設(shè)置激活統(tǒng)計功能,將DBGridEh.SumList.Active := True;(3 選擇所統(tǒng)計字段的統(tǒng)計方式,如將Columnsn.Footer.ValueType := vtSum;(4 3. 復(fù)雜標(biāo)題. (1)標(biāo)題行可設(shè)為2行以上高度,并可以為多列創(chuàng)建一個共同的父標(biāo)題行。為實現(xiàn)這個效果,需在各個列標(biāo)題屬性中以“”分隔父標(biāo)題和子標(biāo)題,如辦公用品包括代碼和名稱兩部分,具體屬性設(shè)置如下:usem
2、ultititile=true;titlelines=2DBGridEh.Columns0.Title.Caption := '辦公用品|代碼'DBGridEh.Columns1.Title.Caption := '辦公用品|名稱' (2)標(biāo)題行顯示圖片 首先添加一個imagelist組件img1并在其中添加一組bmp,ico格式的圖片。然后將DBGridEh的TitleImages設(shè)置為img1.最后在需要顯示圖片的列標(biāo)題的imageindex中設(shè)置需要顯示的img1中圖片的序號。4. 實現(xiàn) DBGridEh 隔行分色顯示p
3、rocedure TForm1.DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh; AFont: TFont; var Background: TColor; State: TGridDrawState;Begin if DBGridEh1.SumList.RecNo mod 2 = 1 then Background := $00FFC4C4 Else Background := $00FFDDDD;
4、end;5. DBGridEh 在某些條件下某行顯示特定顏色procedure TForm1.DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh; AFont: TFont; var Background: TColor; State: TGridDrawState;begin /在 name 字段值為 aaa 的行設(shè)置行背景色(ado 設(shè)置情況下) if ADOQuery1.FieldByName('name'.AsString = 'aaa' then
5、60; Background := $00FFC4C4 /在 xm 字段值為 Li ming 的行設(shè)置行背景色(bde 設(shè)置情況下) else if DBGridEh1.DataSource.DataSet.FieldByName('xm'.AsString = 'Li ming' then Background := $00FFC4C4 Else Background := $00FFDDDD;end; 6.
6、 在dbgrideh中允許選擇多行,如何知道哪些行被選中?是個BOOKMARK類型的屬性。SelectedRows: TBookmarkListprocedure TForm1.Button1Click(Sender: TObject;vari, j: Integer;s: string;beginif DBGrid1.SelectedRows.Count>0 thenwith DBGrid1.DataSource.DataSet dofor i:=0 to DBGrid1.SelectedRows.Count-1 dobeginGotoBookmark(pointer(DBGrid1.
7、SelectedRows.Itemsi;for j := 0 to FieldCount-1 dobeginif (j>0 then s:=s+', 's:=s+Fieldsj.AsString;end;Listbox1.Items.Add(s;s:= ''end;end;7. 顯示自動提示設(shè)置DBGridEh控件的showhint屬性為true,然后設(shè)置需要顯示自動提示的字段的ToolTips屬性為True。8. 自動排序。設(shè)置OptionsEh.dbgAutoSortMarking為true,字段的Title.titleButton屬性為true。9.
8、 根據(jù)不同字段值顯示相應(yīng)的小圖片 如根據(jù)庫存材料的不同狀態(tài)在數(shù)據(jù)單元格中顯示相應(yīng)圖片,具體設(shè)置如下: 添加一個imagelist組件img1并在其中添加一組bmp,ico格式的圖片。然后將需要顯示圖片的列的imagelist屬性設(shè)置為img1;在keylist屬性中添加實際數(shù)據(jù)存儲值,一行為一個值,切記一定要與imagelist中圖片順序一一對應(yīng),否則會張冠李戴,面目全非。還可在picklist中添加提示信息,也要求是一行為一個值,并設(shè)tooltip為true,那么,運行時當(dāng)鼠標(biāo)移動到該數(shù)據(jù)單元格時在顯示圖片的同時還顯示提示信息,怎么樣,功能
9、夠強大吧!可使用空格鍵或鼠標(biāo)切換下一張圖片,圖片切換的同時也改變了實際存儲數(shù)據(jù)值。也可通過shift+空格或鼠標(biāo)切換為上一張圖片。這樣就實現(xiàn)了上下兩個方向圖片切換10. 顯示字段的單列或多列下拉列表(1)單列:設(shè)置好DBGrid中該字段的PickList字符串列表、初始的列表行數(shù)DropDownRows即可。(2)多列:根據(jù)單元格字段值顯示與其相關(guān)的其它表字段內(nèi)容。首先需在當(dāng)前表中新建立一個lookup型字段,把DBGriEh相應(yīng)的列指向lookup字段,然后,設(shè)置相應(yīng)列的DropDownBox的各項屬性并設(shè)置改列的lookupdisplayfields屬性(顯示的列,用分號隔開),而且返回字
10、段必須作為其中的第一項。具體設(shè)置如下:1 放置兩個Query組件和一個DataSource組件,其中一個用于查詢DBGridEh需要的數(shù)據(jù),另一個用于查詢關(guān)聯(lián)表。2 在連接到DBGridEh控件的Query中,Add相關(guān)字段。并為需要添加的字段設(shè)置lookup型列,field type為lookup;設(shè)置dataset為查詢關(guān)聯(lián)表的Query組件,key Fields為關(guān)鍵字段,lookup keys為聯(lián)結(jié)字段,Result Field為顯示在列表中的結(jié)果字段(返回字段)。3 然后,將需要設(shè)置下拉列表的字段的ChachedUpdates屬性設(shè)置為True,為該Query控件設(shè)置OnUpdate
11、Record事件,內(nèi)容可以為空,但是至少留一個“/”。4 放置DBGridEh控件,進(jìn)行相關(guān)設(shè)置。然后添加相關(guān)字段,設(shè)置剛才添加的lookup字段的AlwaysShowEditButton為True。5 進(jìn)行下拉列表相關(guān)屬性的設(shè)置,在字段的LookupDispalyFields屬性設(shè)置列表中需要顯示得字段,如:dropdownshowtitlestrue dropdownsizingtruedropdownwidth-111. 顯示日歷下拉列表 Date 和 DateTime類型字段值均可以此形式顯示。外觀與編輯框無異,當(dāng)點擊該單元格時,右側(cè)會出現(xiàn)“”符號,點擊之即可
12、出現(xiàn)日歷下拉列表,inplace 編輯器將顯示下拉按鈕以顯示顯示下拉計算器。有時不希望出現(xiàn)日歷下拉列表,只需設(shè)置Column.ButtonStyle屬性為 cbsNone即可,此方法同樣適用于其它組件不以特殊外觀顯示的情況。12. 3D或平面外觀效果設(shè)置flat為true則為平面外觀效果.13. 鎖定多列不滾動當(dāng)表格水平方向信息在一屏幕顯示不下時,此項功能非常有用。例如,工資表格中包含姓名、基本工資、績效工資等信息一屏幕顯示不下,需要通過移動水平滾動條顯示下一屏信息。如果不鎖定關(guān)鍵字段列如姓名,則移動到下一屏?xí)r就不知道此條記錄對應(yīng)的姓名。因此,在實際應(yīng)用中經(jīng)常需鎖定多列不滾動。 &
13、#160; 例:姓名字段為表格第二列,則設(shè)置FrozenCols=2.這樣當(dāng)一屏幕顯示不下,通過移動水平滾動條顯示下一屏信息時,表格前兩列不滾動,作為參照列。14. 導(dǎo)入/導(dǎo)出數(shù)據(jù) 導(dǎo)入/導(dǎo)出數(shù)據(jù)在實際處理過程中是比較煩瑣的。但是Enlib3.0提供了一系列函數(shù)讓你輕松實現(xiàn)此功能,而且支持的文件格式很多:Text, Csv, HTML, RTF, XLS 和內(nèi)部數(shù)據(jù)格式。除此之外,還可對任意選擇的數(shù)據(jù)區(qū)域進(jìn)行操作。函數(shù)如下:Pascal: SaveDBGridEhToExportFile(TDBGridEhExportAsText,DBGridEh1,'c:t
14、empfile1.txt',False;C+: SaveDBGridEhToExportFile(_classid(TDBGridEhExportAsText,DBGridEh1,"c:tempfile1.txt",false;說明:其中false參數(shù)表示導(dǎo)出的是選中的局部數(shù)據(jù)區(qū)域數(shù)據(jù),true則為整個表格數(shù)據(jù)。 例:將當(dāng)前表格中數(shù)據(jù)導(dǎo)出為EXCEL等格式文件。 在窗體中添加一個SaveDialog組件和“導(dǎo)出”按鈕B_exp,在“導(dǎo)出”按鈕的click事件中添加如下代碼:procedure TForm1.B_exp
15、Click(Sender: TObject;var ExpClass:TDBGridEhExportClass; Ext:String;Begin SaveDialog1.FileName := 'file1' if (ActiveControl is TDBGridEh thenif SaveDialog1.Execute then begin case SaveDialog1.FilterIndex of
16、1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt' end; 2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv' end; 3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm' end; 4: begin E
17、xpClass := TDBGridEhExportAsRTF; Ext := 'rtf' end; 5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls' end;else ExpClass := nil; Ext := '' end; if ExpClass <> nil then begin
18、 if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName-2,3 <> UpperCase(Ext then SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext; SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDialog1.FileName,Fa
19、lse; /其中false為局部數(shù)據(jù) end; end;end;15. 將存在的DBGrid組件轉(zhuǎn)換為DBGridEh組件。具體步驟如下: 1、在Delphi IDE下打開TDBGrid組件. 2、通過組合鍵Alt-F12將form 以文本方式顯示; 3、將所有TDBGrid 對象名改變?yōu)?TDBGridEh對象名,如:DBGrid1: TDBGrid改為 DBGrid1: TDBGridEh; 4、再次通過組合鍵Alt-F12將文本方式恢復(fù)為form 顯示; 5、
20、將form各相關(guān)事件中定義的所有TDBGrid改為TDBGrideh,如DBGrid1: TDBGrid改為DBGrid1: TDBGridEh; 6、重新編譯應(yīng)用程序。16. STFilter的使用。(?(1)在DBGridEh中設(shè)置local值為True(具體作用還沒有體會出來- -,設(shè)置Visible為True。(2)在Columns中的STFilter下的屬性中,設(shè)置ListSource為用于取下拉列表的DataSource,ListField為取下拉列表內(nèi)容的字段。二. DBSumList組件:DBSumList組件可以在可視動態(tài)變化數(shù)據(jù)集中進(jìn)行記錄統(tǒng)計。但是上面的DBGridEh的統(tǒng)計功能并不需要這個組件。使用時先在設(shè)置DataSet關(guān)聯(lián)到Query組件,然后SumCollection中設(shè)置相關(guān)的需要統(tǒng)計的數(shù)據(jù)字段,然后寫 SumListChanged 事件來指定在被統(tǒng)計數(shù)據(jù)發(fā)生改變后所要做的操作。三. PrintDBGridEht組件:1. 屬性。AfterGridText:表尾文字。BeforeGridText:表頭文字。PageFooter:設(shè)置頁腳。Pa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公共關(guān)系專業(yè)的發(fā)展趨勢試題及答案
- 市政工程水資源利用試題及答案2025
- 深思熟慮行政管理考試試題及答案
- 2025年數(shù)字文化產(chǎn)業(yè)發(fā)展趨勢與政策環(huán)境研究報告
- 行政管理在變化中的適應(yīng)能力試題及答案
- 現(xiàn)代管理學(xué)中利益相關(guān)者分析試題及答案
- 建筑監(jiān)測技術(shù)試題及答案
- 2025年工程經(jīng)濟(jì)新技術(shù)應(yīng)用試題及答案
- 2025年工程經(jīng)濟(jì)應(yīng)用實踐試題及答案
- 行政管理經(jīng)濟(jì)法必背試題及答案
- 草皮鋪種施工方案
- 中醫(yī)養(yǎng)生穴位保健按摩課件
- 肩關(guān)節(jié)鏡下肩袖修補術(shù)的護(hù)理查房ppt
- 回旋鏢運動軌跡的模擬
- 《康復(fù)醫(yī)學(xué)》PPT課件(PPT 105頁)
- (完整)高血壓病歷以及全套臨床病歷
- 標(biāo)準(zhǔn)溶液配制與標(biāo)定原始記錄(氫氧化鈉)
- 光學(xué)零件工藝學(xué)
- 內(nèi)墻膩子施工技術(shù)交底
- 自粘聚合物改性瀝青防水卷材施工方案5完整
- 浙工大 《大學(xué)英語》專升本 復(fù)習(xí)試卷 及答案
評論
0/150
提交評論