亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

Delphi開發經驗四則

2019-11-18 19:00:26
字體:
來源:轉載
供稿:網友
作者:高素梅

  配置數據引擎(BDE、SQL Link)的簡單方法

  在數據庫程序分發時,需要攜帶數據引擎(BDE、SQL Link),并且在客戶端安裝完程序后還需要配置數據引擎,如用戶名(username)、密碼(PassWord)等等。如果手工配置的話,工作量比較大,這時,我們可利用InstallShield For Delphi輕松實現配置。在用InstallShield For Delphi制作安裝程序時,在生成安裝程序的目錄里有一個*.iwz的文本文件,只要在[IDAPI Alias]片段中手工加入即可。 例如:

  [IDAPI Alias]

  username=SYSDBA

  password=masterkey

  安裝程序后數據引擎自動配置完畢。

  制做快速按鈕條的方法

  快速按鈕條上的每一個圖形按鈕都代表著一項常用的功能,同時,這些圖形按鈕尺寸較普通的圖標大,可以放置更大、更形象的圖形,甚至可以帶上簡短的提示,這對于用戶執行最常用的功能很有幫助?;谏鲜鲈?,越來越多的Windows應用程序采用快速按鈕條來改善應用程序的界面。筆者在用Delphi編程時,采用了兩種不同的方法來實現快速按鈕條,本文結合制作一個具有兩組、共六個按鈕的快速按鈕條的實例,列出了這兩種方法的具體設計步驟。

  1.組合生成法

  (1)在窗體上放置一個Panel1對象,作為圖形按鈕的載體。

  (2)設置Panel1的屬性Caption為空,屬性Align為alTop,調整其高度至合適尺寸。

  (3)在Panel1上放置六個SpeedButton按鈕(選用SpeedButton,是因它具有浮動特性)。

  (4)在Panel1上放置兩個Bevel對象,調整其位置和大小,用于分隔按鈕組。

  (5)調整SpeedButton1的大小及在Panel1中的位置。

  (6)選擇SpeedButton1,設置其屬性Flat為True。

  (7)單擊SpeedButton1的屬性Glyph所對應的省略號小按鈕,打開PictureEditor窗口,選擇一個象征“查詢”的圖標。設置屬性ShowHint為True,屬性Hint為“查詢”。

  (8)按步驟(5)至(7)的方法,分別設置好其余幾個SpeedButton按鈕的屬性。

  這樣,一個快速按鈕條就制作完成了。運行時,快速按鈕均以浮動方式顯示,當鼠標移至其上時,即顯示按鈕外框,并顯示小提示。

  2.借用ToolBar生成法

  (1)在窗體上放置一個ToolBar1對象。

  (2)設置ToolBar1的屬性EdgeBorders.ebLeft、ebTop、ebRight、ebButtom均為True;屬性Flat為True;調整ToolBar1的大小至合適尺寸。

  (3)選擇ToolBar1,用右鍵點出快速選單,分別點擊NewButton和NewSeparator增加六個按鈕ToolButton和兩條分隔欄線。

  (4)任意選擇一個ToolButton按鈕,調整其大小至合適尺寸,所有的ToolButton也同時被調整好。

  (5)設置ToolBar1的屬性BorderWidth為3,以調整ToolButton的位置。

  (6)在窗體上放置一個ImageList1對象,設置它的屬性Height和Width的數值,以適應較大尺寸的圖像。

  (7)雙擊ImageList1,通過“Add”按鈕分別裝入六個圖像,與ToolBar1中的六個ToolButton一一對應。

  (8)設置ToolBar1的屬性Images為ImageList1。

  (9)設置六個ToolButton的屬性ShowHint為True,并分別設置各自的小提示屬性Hint。

  (10)還可以設置ToolBar1的HotImages指定鼠標指向按鈕時的圖片集。

  采用ToolBar實現的快速按鈕條在外觀上與第一種方法制作的類似。

  以上兩種方法均能實現快速按鈕條,但各有千秋:第一種設計過程較為簡單;第二種方法則提供了更多的功能,如可用HotImages指定鼠標指向按鈕時的圖片集。讀者不妨從中選擇一種,并可繼續完善其功能。

  建立臨時表的方法

  數據輸入是開發數據庫程序的必然環節。在Client/Server結構中,客戶端可能要輸入一批數據后,再向服務器的后臺數據庫提交,這就需要在本地(客戶端)建立臨時數據表來存儲用戶輸入的數據,待提交后,清除本地數據表。這種方法的好處是:提高輸入效率,減小網絡負擔。

  由于用戶一次輸入的數據量一般情況下較小(不會超過幾百條記錄),所以臨時表可以建立在內存中,這樣處理速度較快。臨時表創建有如下兩種方法:

  1.使用查詢控件創建臨時表

  第1步:在窗體上放入查詢控件(TQuery),并設置好所連接的數據表。

  第2步:添加如下語句:

  TQuery. CachedUpdates=True;

  TQuery. RequestLive=True。

  第3步:在原有的SQL語句后加入一條Where子語句,要求加入這條Where子語句后SQL查詢結果為空。

  例如:

  SELECT Biolife."Species No", Category, Common_Name, Biolife."Species Name", Biolife."Length (cm)", Length_In, Notes, Graphic

  FROM "biolife.db" Biolife

  where Biolife.Category=′A′ and Biolife.Category=′B′

  這樣臨時表就建立好了。

  2.使用代碼創建臨時表

  函數代碼如下:

  function CreateTableInMemory(const AFieldDefs:TFieldDefs):

  TDataSet;

  var TempTable:TClientDataSet;

  begin

  TempTable:=nil;

  Result:=nil;

  if AFieldDefs〈〉nil then

  begin

  try

  TempTable:=TClientDataSet.Create(application);

  TempTable.FieldDefs.Assign(AFieldDefs);

  TempTable.CreateDataSet;

  Result:=(TempTable as TDataSet);

  Except

  if TempTable〈〉nil then TempTable.Free;

  Result:=nil;

  raise;

  end

  end

  end;

  在程序中按如下方法調用:

  PRocedure TForm1.Button1Click(Sender: TObject);

  var ADataSet:TDataSet;

  begin

  ADataSet:=TDataSet.Create(Self);

  with ADataSet.FieldDefs do

  begin

  Add(′Name′,ftString,30,False);

  Add(′Value′,ftInteger,0,False);

  end;

  with DataSource1 do

  begin

  DataSet:=CreateTableInMemory(ADataSet.FieldDefs);

  DataSet.Open;

  end;

  ADataSet.Free;

  end;

  這樣,臨時表就創建完成。

  方法1使用簡單,但由于利用了查詢控件,清空數據時需要查詢服務器后臺數據庫,所以速度稍慢,而且不適用于臨時表中各個字段由幾個數據表的字段拼湊而成的情況。方法2適用范圍廣、速度快,但需要編寫代碼。

  在InterBase數據庫中使用函數

  程序員可能在用InterBase作為后臺數據庫時,常會為其提供的函數過少而感到使用不便(只有四個),無法方便地編寫出復雜的存儲過程。InterBase本身無法編寫函數,但它可以使用外部函數(調用DLL中的函數)。下例中說明如何在InterBase 中聲明SUBSTR函數。

  DECLARE EXTERNAL FUNCTION SUBSTR

  CSTRING(80), SMALLINT, SMALLINT

  RETURNS CSTRING(80)

  ENTRY_POINT "IB_UDF_substr" MODULE_NAME "ib_udf"

  其中:MODULE_NAME為DLL的名稱,ENTRY_POINT為函數名。

  聲明后便可以使用,例如:

  select SUBSTR(country)

  from country

  本例使用的是Delphi安裝時自帶的IBLocal數據庫,用戶也可以自己編寫函數來擴充InterBase。

上一篇:Delphi的優點

下一篇:"Delphi之完全漢語"終結版

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
伊人久久大香线蕉av一区二区| 日韩av在线导航| 成人精品在线观看| 久久久久久久久中文字幕| 亚洲成人999| 1769国内精品视频在线播放| 国产一区二区三区视频在线观看| 成人有码在线视频| 国产亚洲成精品久久| 一区二区三区美女xx视频| 一区二区在线视频播放| 久久福利网址导航| 国产成+人+综合+亚洲欧美丁香花| 亚洲自拍偷拍第一页| 国产视频综合在线| 精品久久久av| www.久久撸.com| 欧美福利小视频| 欧美理论电影在线播放| 国产视频欧美视频| 亚洲美腿欧美激情另类| 亚洲欧美精品伊人久久| www.日本久久久久com.| 国产香蕉一区二区三区在线视频| 日韩精品中文字幕有码专区| x99av成人免费| 欧美日韩xxxxx| 91成人国产在线观看| 国产亚洲激情在线| 久久久久99精品久久久久| 成人黄色片在线| 国产亚洲一区二区在线| 2019国产精品自在线拍国产不卡| 国产精品久久久久9999| 国产精品第一区| 亚洲日本成人网| 米奇精品一区二区三区在线观看| 亚洲999一在线观看www| 国产精品久久久久久久久久东京| 国产91精品青草社区| 亚洲欧美日韩精品| 欧美国产日本在线| 亚洲最大激情中文字幕| 欧美性猛交xxxx黑人| 成人精品久久av网站| 久久在线免费观看视频| 亚洲欧洲黄色网| 欧美自拍视频在线观看| 欧美日本在线视频中文字字幕| 欧美激情videoshd| 亚洲女人天堂成人av在线| 精品日韩视频在线观看| 久久夜色精品国产亚洲aⅴ| 欧美性少妇18aaaa视频| 日韩av理论片| 91在线高清免费观看| 久久久久久久国产精品视频| 久久久精品一区二区三区| 日本欧美国产在线| 91嫩草在线视频| 亚洲男人天堂九九视频| 欧美国产日韩免费| 尤物yw午夜国产精品视频明星| 久久久久亚洲精品国产| 久久亚洲综合国产精品99麻豆精品福利| 91精品国产一区| 欧美激情在线观看| 亚洲图片欧洲图片av| 亚洲影视中文字幕| 国产成人欧美在线观看| 国产精品久久久久999| 中文字幕日韩精品有码视频| 亚洲激情 国产| 91亚洲精品在线观看| 欧亚精品在线观看| 日韩国产激情在线| 97碰碰碰免费色视频| 久久精品亚洲国产| 中文字幕自拍vr一区二区三区| 欧美极度另类性三渗透| 欧美大片网站在线观看| 伊人久久免费视频| 久久av红桃一区二区小说| 久久精品视频亚洲| 538国产精品视频一区二区| 国产深夜精品福利| 亚洲黄色在线观看| 九九视频直播综合网| 91成品人片a无限观看| 青草青草久热精品视频在线观看| 7m第一福利500精品视频| 日韩有码在线视频| 亚洲图片在区色| 日韩精品久久久久久福利| 日韩亚洲欧美中文高清在线| 国内成人精品一区| 欧美精品18videos性欧美| 久久久久久国产三级电影| 福利二区91精品bt7086| 国产精品美乳一区二区免费| 高清在线视频日韩欧美| 日韩一区二区三区国产| 亚洲成人久久一区| 久久免费视频网站| 91免费在线视频网站| 成人动漫网站在线观看| 91亚洲精品视频| 亚洲精品白浆高清久久久久久| 中文.日本.精品| 日韩在线观看你懂的| 欧美性videos高清精品| 亚洲少妇中文在线| 亚洲天堂av在线免费| 91亚洲一区精品| 北条麻妃一区二区在线观看| 亚洲日本欧美中文幕| 在线观看欧美日韩国产| 国产福利精品视频| 国产日韩欧美在线| 日韩一区二区av| 午夜精品久久久久久久99热| 久久久中文字幕| 91啪国产在线| 福利视频第一区| 成人在线中文字幕| 亚洲片在线资源| 国产精品中文在线| 久久成年人免费电影| 国产一区二区在线播放| 成人伊人精品色xxxx视频| 日韩在线精品视频| 亚洲国产精品va| www.欧美免费| 久久久在线视频| 欧美激情在线观看视频| 精品视频在线播放免| 国产成人精品免高潮在线观看| 久久伊人精品视频| 麻豆国产精品va在线观看不卡| 久久国产色av| 欧美性xxxxxxxxx| 欧美美女15p| 最新的欧美黄色| 91丝袜美腿美女视频网站| 成人高清视频观看www| 亚洲人午夜色婷婷| 91久久国产精品| 国产一区在线播放| 国产精品欧美激情在线播放| 亚洲永久在线观看| 亚洲男人天天操| 欧美日本在线视频中文字字幕| 亚洲白拍色综合图区| 精品免费在线视频| 在线视频欧美日韩精品| 国产99视频精品免视看7| 夜夜狂射影院欧美极品| 国产精品99久久99久久久二8| 精品久久中文字幕| 欧美成人激情视频免费观看| 上原亚衣av一区二区三区| 永久免费看mv网站入口亚洲| 在线日韩第一页| 久久精品小视频|