聲明:本文是對borland公司delphi7在線(xiàn)幫助的翻譯。原文版權歸borland公司所有,中文翻譯版權歸作者所有。本文可以在不經(jīng)作者授權的情況下進(jìn)行轉載,但必須注明作者,且不得用于商業(yè)用途;用于商業(yè)用途需經(jīng)作者授權,聯(lián)系方式:fengzhengren@eyou.com。如果您認為作者的翻譯有錯誤或不妥之處,或文字校對有錯誤之處,請向作者發(fā)電子郵件聯(lián)系,作者將不勝感激。 作者:fengzhengren(風(fēng)箏) 時(shí)間:2005年5月16日 Delphi7的新特性 1、概述 Delphi7在以下方面增加了新特性或有所增強: IDE(集成開(kāi)發(fā)環(huán)境) Web COM Database(數據庫) Component library(控件庫) Runtime library(運行時(shí)庫) Compiler(編譯器) Rave Reports(Rava報表) ModelMaker Documentation(文檔) 注意:一些特性未提供給Delphi的某些版本。 2、 IDE變化 IDE在以下方面增加了新特性: 2.1 編譯器信息 新的View|Additional Message Info菜單項可以顯示提示信息窗口,通過(guò)窗口你可以從Borland公司的網(wǎng)站上下載和查看關(guān)于編譯器的信息。 新的Project|Options|Compiler Messages頁(yè)面使你對在哪種情況下產(chǎn)生編譯警告有更強的控制能力。 2.2 控件面板變化 增加了打開(kāi)CLX應用程序時(shí)才顯示的system頁(yè)面。 新的Indy Intercepts和Indy I/O Handlers頁(yè)面提供開(kāi)放源碼的網(wǎng)絡(luò )協(xié)議控件(專(zhuān)業(yè)版和企業(yè)版)。 新的IW Standard、IW Data、IW Client Side和IW Control頁(yè)提供IntraWeb控件開(kāi)發(fā)基于Web的應用程序。 新的Rave頁(yè)面提供控件以在你開(kāi)發(fā)的程序中增加報表生成功能。 如果控件頁(yè)面通過(guò)水平滾動(dòng)才能顯示其余的控件圖標的話(huà),會(huì )出現下拉菜單按鈕列出其余的控件圖標。 2.3 代碼提示變化 代碼提示的速度變快并允許你通過(guò)在代碼提示列表中使用CTRL+單擊該標識符瀏覽其聲明。 新的HTML代碼提示在代碼編輯窗口自動(dòng)顯示有效的HTML元素和屬性(專(zhuān)業(yè)版和企業(yè)版)。 通過(guò)使用OpenTools API,可以建立定制的代碼提示管理器。細節參考“Extending the IDE”一節。 菜單項Tools|Editor Options|Code Insight page允許你對代碼提示工具的符號顯示設置顏色。 2.4調試器變化 查看列表做了如下變動(dòng): 為簡(jiǎn)化調試,多表格允許你將查看對象放入查看組。增加查看組,右鍵單擊查看列表選擇Add Group選項。 增加查看對象名稱(chēng)和數值列,是否顯示表頭可以通過(guò)右鍵單擊查看列表選擇Show Column Headers實(shí)現。 增加復選框控制查看對象的是否顯示。 菜單項Tools|Debugger Options|Event Log page增加了下列新選項: 通過(guò)設置事件日志的顏色可以使不同的事件消息顯示不同的顏色。 模塊(exe、dll、ocx等)在被編譯的進(jìn)程裝載或卸載時(shí)自動(dòng)在事件日志中寫(xiě)入消息記錄。以前,是否將這些事件記入日志可以通過(guò)該選項控制。 Run Parameters對話(huà)框增加了工作目錄選項,允許你為編譯進(jìn)程指定文件夾名稱(chēng)。 2.5其他改進(jìn) 在工程管理器中,你可以通過(guò)右鍵單擊工程組中的工程選擇“Make All from Here”或“Build All from Here”編譯工程組中的部分工程。 3、WEB技術(shù)變化 Delphi已經(jīng)包括進(jìn)了AtoZed 軟件公司的IntraWeb控件,你可以使用IntraWeb的標準窗口工具開(kāi)發(fā)Web服務(wù)器應用程序,你也可以使用IntraWeb開(kāi)發(fā)Web Broker和WebSnap網(wǎng)頁(yè)應用程序,更多內容,請參考“用IntraWeb創(chuàng )建web服務(wù)器應用程序”一節。Delphi企業(yè)版包括完整的IntraWeb產(chǎn)品,專(zhuān)業(yè)版包括IntraWeb產(chǎn)品的一部分。 Delphi已經(jīng)支持作為Web Broker、WebSnap和SOAP對象類(lèi)型的Apache2。 Borland公司不提倡使用Win-CGI作為web服務(wù)器應用程序和web服務(wù)的的對象類(lèi)型,而推薦使用規則的CGI、ISAPI/NSAPI或Apache對象類(lèi)型代替。 Web服務(wù)得到以下加強: 3.1 新的UDDI瀏覽器 新的UDDI瀏覽器可以定位和導入基于整個(gè)UDDI注冊的WSDL文檔。 3.2 SOAP頭 新類(lèi)和接口使你可以向在服務(wù)器和客戶(hù)端傳輸信息的SOAP信封讀取或插入頭信息。更多內容請參考“定義和使用SOAP頭”和“在客戶(hù)端應用程序處理SOAP頭”。 3.3 附件 Web服務(wù)應用程序(包括客戶(hù)端和服務(wù)器應用程序)已經(jīng)能操縱附件。附件(TSOAPAttachment的子類(lèi))作為多種形式的一部分以SOAP編碼傳送信息,當應用程序收到附件后,將其保存在臨時(shí)文件中,供應用程序使用。 3.4類(lèi)型支持 你可以通過(guò)重載Tremotable類(lèi)新增加的兩個(gè)虛方法ObjectToSOAP和SOAPToObject定制遠程類(lèi)和和它們的SOAP請求之間的交換。 處理響應web服務(wù)請求時(shí)發(fā)生異常的異常對象(EremotableException實(shí)例)包含了更多SOAP錯誤包的信息。 當注冊調用接口時(shí),類(lèi)型定義以遠程類(lèi)別注冊的方式自動(dòng)注冊。 TXSDecimal增加了AsBcd屬性可以在XML和本地類(lèi)型之間輕松轉換,同樣地,TXSHexBinary增加了AsByteArray屬性。描述時(shí)間值的遠程類(lèi)現在改為以秒為單位而不是毫秒。 3.5其他加強 THTTPReqResp增加的新事件允許你在發(fā)送HTTP信息之前截取信息,并且允許你在發(fā)送或接收長(cháng)信息時(shí)監控進(jìn)度。 THTTPSoapPascalInvoker類(lèi)發(fā)布事件允許你編寫(xiě)代碼在調用者執行請求之前或之后執行。 增加了對調用接口和WSDL文檔之間映射的控制。TWSDLHTMLPublish類(lèi)增加了幾個(gè)事件以控制產(chǎn)生的WSDL文檔。你可以識別函數返回值和參數名、命名空間的使用、默認的SOAP之間的映射。在客戶(hù)端,文字編碼增加了對RPC-style編碼方式的支持。 新增接口IRIOAccess使你可以訪(fǎng)問(wèn)實(shí)現了調用接口的遠程接口對象。 IOPConvert接口增加了Encoding屬性,使你可以在客戶(hù)端和Web服務(wù)提供者之間傳輸編碼信息時(shí)指定字符集。 某些WEB服務(wù)的改變對DataSnap應用程序有一定影響,細節請參考“數據庫技術(shù)的改變”一節。 TLinkedRIO類(lèi)的構造函數對你調用的每個(gè)方法自動(dòng)產(chǎn)生單獨的文件名使調試更加方便。 TOPToSoapDomConvert類(lèi)增加了兩個(gè)事件用于調試SOAP包。 自定義的調用接口可以使用重載方法。 4、COM技術(shù)的變化(僅delphi專(zhuān)業(yè)版和企業(yè)版) 使用導入類(lèi)型庫對話(huà)框(工程à導入類(lèi)型庫)可以為.NET編譯建立聯(lián)合類(lèi)包裝。使用微軟的.NET框架你可以使用普通COM服務(wù)器的結果包裝。 5、數據庫技術(shù)的變化(僅delphi專(zhuān)業(yè)版和企業(yè)版) 更新了Informix SE、Oracle9i、DB2 7.2、InterBase 6.5和MySQL 3.23.49的dbExpress驅動(dòng),并增加了MSSQL 2000的驅動(dòng)。 增加了新的數據庫控件,同時(shí)改變了一些原有的控件,細節參見(jiàn)“控件庫改變”一節。 Borland公司不提倡使用SQL Links,后續版本對SQL Links的支持不再加強,并且在2002年后的版本中將放棄對SQL Links的支持。Borland公司推薦使用dbExpress訪(fǎng)問(wèn)SQL Server數據庫。 DataSnap(僅delphi企業(yè)版) 在DataSnap應用中,IAppServer已經(jīng)變?yōu)镮AppServerSOAP,以使IAppServer接口更加明確。TSoapConnection類(lèi)的UseSOAPAdapter屬性可以用于為使用早期Delphi版本開(kāi)發(fā)的服務(wù)器應用程序編寫(xiě)客戶(hù)端。TSoapConnection類(lèi)也發(fā)布了幾個(gè)新事件使你在處理WEB服務(wù)請求時(shí)可以在幾個(gè)方面定制你的客戶(hù)端應用程序。 你可以使用SOAPServerIID屬性或向URL的終端增加數據模塊接口,明確鑒別有多個(gè)數據模塊的應用服務(wù)器的SOAP數據模塊。 你可以使用SOAP連接控件的SOAPServerIID屬性和GetSOAPServer方法擴展應用服務(wù)器接口。 DataSnap不再支持CORBA連接。 6、控件庫變化 6.1WindowsXP主題支持(Delphi專(zhuān)業(yè)版和企業(yè)版) VCL應用程序支持Wiondows第6版通用控件,你的應用程序查找到合適的裝載文件后會(huì )在WindowsXP系統上自動(dòng)使用新的Windows控件。 6.2新增單元 新的DBClientActns單元包括3個(gè)新的動(dòng)作控件TClientDataSetApply、TClientDataSetUndo和TClientDataSetRevert,用于和client datasets一起工作。 6.3新增控件 控件面板的dbExpress頁(yè)新增TSimpleDataSet控件供簡(jiǎn)單的兩層數據庫應用程序使用(TSimpleDataSet代替了TSQLClientDataSet)。 控件面板的Dialogs頁(yè)新增TPageSetupDialog控件提供Wiondow標準頁(yè)面設置對話(huà)框。 控件面板的Additional頁(yè)新增TXPColorMap、TStandardColorMap和TTwilightColorMap以建立彩色菜單和工具條。 新CLX版本控件面板的System頁(yè)增加了新的路徑和文件控件。 控件面板的Indy Intercepts和Indy I/O Handlers頁(yè)提供了網(wǎng)絡(luò )協(xié)議(專(zhuān)業(yè)版和企業(yè)版)。 6.4改動(dòng)的控件 CLX版本的TOpenDialog和TSaveDialog控件增加了額外的特性如支持文件預覽。 VCL版本的TCustomForm控件增加了ScreenSnap和SnapBuffer兩個(gè)屬性,以控制當窗口移動(dòng)時(shí)是否吸附于屏幕邊緣。 TCustomComboBoxEx控件增加了AutoCompleteOptions屬性使下拉框可以響應用戶(hù)按鍵。 從TOpenDialog和TQtDialog繼承下來(lái)的CLX對話(huà)框對象通過(guò)設置UseNativeDialog屬性為true,可以使用Windows通用對話(huà)框代替Qt對話(huà)框。 6.5不提倡使用的控件 請參考Delphi7文件夾下的readme.txt文檔。 7、運行時(shí)庫的改變 7.1 Classes單元 增加了新異常類(lèi)EfileStreamError,EfileStreamError和EFOpenError繼承自此類(lèi)。此類(lèi)有一個(gè)文件名參數,因此,現在的異常信息包含了發(fā)生異常的文件的文件名。 TStrings類(lèi)增加了ValueFromIndex和NameValueSeparator兩個(gè)新屬性。 TThread類(lèi)的CheckThreadError方法已經(jīng)由private變?yōu)閜ublic。 7.2 Math單元 該單元的ClearExceptions過(guò)程增加了RaisePending這一默認參數。 7.3 StdConvs單元 StdConvs單元增加了重量單位stones(英石,合14磅)。 7.4 StrUtils單元 StrUtils單元有如下變化以支持多字節字符集(MBCS)。 以前的LeftStr、RightStr和MidStr 函數以AnsiString 作為參數和返回值,不支持MBCS字符串?,F在每個(gè)函數都已經(jīng)被一對重載函數代替,一個(gè)以AnsiString 作為參數和返回值,另一個(gè)以WideString作為參數和返回值。這些新函數可以正確地操作MBCS字符串。這個(gè)變化打破了用這些函數存儲和得到單字節水平字符串的編碼規則,這些代碼必須更新為使用新的下面描述的單字節函數。 新函數LeftBStr、RightBStr和MidBStr提供單字節水平字符串操作代替以前的LeftStr、RightStr和MidStr。 新函數AnsiLeftStr、AnsiRightStr和AnsiMidStr和新的AnsiStr操作函數LeftStr、RightStr和MidStr是一樣的,除了它們沒(méi)有被相同的WideString函數重載。 StrUtils單元新增字符串查找函數PosEx。 7.5 SysUtils單元 SysUtils單元新增線(xiàn)程安全的重載函數用于格式化和解析數字、日期時(shí)間值和貨幣類(lèi)型值。它們之所以是線(xiàn)程安全的是因為從TformatSettings類(lèi)的數據結構中獲取局部信息而不是全局變量。數據結構在使用前必須移植,新函數GetLocaleFormatSettings用于從指定位置移植數據結構。 7.6 VarCmplx單元 VarCmplx單元新增函數VarComplexLog2、VarComplexLog10、VarComplexLogN、 VarComplexTimesImaginary和 VarComplexTimesReal。 7.7 Variants單元 新增VarIsError和VarAsError函數。 異常EvariantError現在是由變量類(lèi)型代碼拋出的異常類(lèi)的基礎。 新增幾個(gè)不同的全局控制變量NullEqualityRule、 NullMagnitudeRule、NullStrictConvert、NullAsStringValue和 PackVarCreation。 8、編譯器的變化 Delphi的dcc32編譯器新增三個(gè)編譯警告:Unsafe_Type、Unsafe_Code和Unsafe_Cast。這些警告在默認情況下是關(guān)閉的,通過(guò)編譯器指示{$WARN UNSAFE_CODE ON}、編譯器命令行開(kāi)關(guān)(dcc32 -W+UNSAFE_CODE)或通過(guò)Project|Options|Compiler Messages page可以使其打開(kāi)。 9、Rave報表支持 Delphi現在包括進(jìn)了來(lái)自Nevrona公司的Rave報表,在你開(kāi)發(fā)的應用程序中加入報表控件,可以使使用者生成報表。更多信息請參考“創(chuàng )建Rave報表”一節。 10、ModelMaker支持(專(zhuān)業(yè)版和企業(yè)版) ModelMaker工具可以簡(jiǎn)化類(lèi)和接口的設計、構造和維護,ModelMaker包含的工具,可以創(chuàng )建UML樣式圖,用于創(chuàng )建和修改工程源代碼。 Delphi企業(yè)版包括ModelMaker軟件公司的ModelMaker,專(zhuān)業(yè)版包括試用期為30天的ModelMaker,但它們的功能是一樣的。 11、文檔變化 所有的PDF、HTML和INT文檔由delphi伴隨工具盤(pán)發(fā)布,而不再是安裝盤(pán)。你可以直接從光盤(pán)查看文檔或復制到你的文件夾,伴隨工具盤(pán)包括以下文檔:
由于《開(kāi)發(fā)人員指南》大小的限制,第五部分“創(chuàng )建定制控件”不再包括在該書(shū)內,而單獨編為《創(chuàng )建新控件作者指南》,這本新書(shū)可以從在線(xiàn)幫助中獲得也可以從伴隨工具光盤(pán)獲得PDF文檔。 Object Pascal語(yǔ)言現在稱(chēng)為delphi語(yǔ)言,在線(xiàn)幫助和文檔也做了相應的更該。 為確保delphi指南繼續有效,它們已經(jīng)從《快速開(kāi)始》和《開(kāi)發(fā)人員指南》中移出,你可以從伴隨工具光盤(pán)獲得PDF文檔。 一些delphi在線(xiàn)幫助主題包含為Kylix和C++Builder用戶(hù)提供的c++語(yǔ)法和代碼示例,作為delphi開(kāi)發(fā)人員,可以不用理會(huì )。 |
聯(lián)系客服