內容介紹
本書完整而全面地介紹了Delph作品目錄
目 錄譯者序
第一部分 入門
第1章 程式設計基礎
1.1 本書的結構
1.2範例程式
1.3創建設計良好的程式
1.3.1設計問題:書寫簡單的代碼
1.3.2螺鏇式上升
1.3.3好OOP與差OOP的對比
1.3.4注意靈活的事件處理程式
1.3.5感到懶於理清程式的環節
1.3.6避免使用隱藏數據交叉連結對象
1.3.7簡短的方法
1.3.8變數、方法以及過程的命名
1.3.9避免特徵漂移
1.3.10創建組件
1.3.11使用第三方工具
1.4本書正文的注意事項
1.4.1Unleash和Merc40包
1.4.2CodeBox單元
1.4.3建立網路
1.4.4Borland/Inprise的名稱變化
1.4.5注釋代碼
1.5總結
第2章IDE和VCL增強
2.1可停放的工具列
2.2使用工具視窗
2.3使用COdeExplor
2.4 Delphi4中的新工具
2.4.1使用ProjectManager和調試器
2.4.2調試DLL
2.4.3使用模組視圖
2.4.4使用事件日誌視窗
2.4.5CPU視圖
2.4.5調試器中的新特徵
2.4.6CodeBrowser和TooltipSymbolInsight
2.5停靠視窗
2.5.1在窗體中停放控制項
2.5.2在窗體中停放窗體
2.6動作列表
2.6.1使用動作列表
2.6.2使用標準動作
2.7函式重載
2.7.1方法重載和繼承
2.7.2使用方法重載時要避免的錯誤
2.7.3默認參數
2.8動態數組
2.9implements關鍵字
2.10總結
第3章 多態性
3.1多態性的概念
3.1.1 賦值和等於的比較
3.1.2多態性的簡單例子
3.2多態性賦值能力
3.2.1設定子對象適合於它們的父對象
3.2.2多態性的另一面
3.3虛方法和多態性
3.3.1經典的形狀演示
3.3.2沒有多態性的代碼
3.4 VCL中的多態性
3.5總結
第4章 異常處理
4.1本章如何處理異常
4.2異常的理論
4.2.1 異常的功能
4.2.2默認異常處理程式
4.2.3整個程式是一個大try塊
4.2.4未處理異常引起的恐慌
4.3異常類
4.4基本異常句法
4.4.1一個簡單的try..except模組
4.4.2異常的關聯錯誤字元串
4.4.3找到錯誤的地址
4.4.4異常處理總結
4.5引發異常
4.5.1引發VCL異常類
4.5.2理解VCL異常類
4.5.3運行Gauntlet:多異常類
4.5.4在常規except語句中捕獲異常
4.6創建和引發自己的異常
4.7再引發異常
4.8try..finally塊
4.9流、異常和空閒空間
4.10 替換默認的異常處理程式
4.11 使用資源跟蹤錯誤字元串
4.12總結
第5章 執行緒
5.1進程和記憶體
5.1.1 執行緒與多任務
5.1.2 搶占式與非搶占式多任務
5.2執行緒:一個簡單的例子
5.3多執行緒程式
5.3.1任Thread2程式中使用執行緒
5.3.2向執行緒函式傳遞一個參數
5.3.3臨界區:讓多個執行緒同時工作
5.4處理互斥元
5.5執行緒和VCL
5.6執行緒安全資料庫訪問
5.7VCL執行緒安全對象
5.8使用TThread對象
5.9設定執行緒的優先權
5.10重訪Delphi執行緒
5.11總結
第二部分 創建組件
第6章 創建組件(一)
6.1組件原理
6.2創建現存組件的派生組件
6.2.1創建簡單的組件
6.2.2雙向工具
6.2.3註冊組件
6.2.4改變組件的默認行為
6.2.5動態創建並檢查組件
6.3包:將組件放入ComponentPalette中
6.3.1什麼是包
6.3.2創建包
6.4 擴展Un1eash單元
6.4.1TCCBigEdit和TCCEmptyPanel控制項
6.4.2創建複合組件
6.4.3創建組件的published屬性
6.4.4流屬性的注意事項
6.5創建真正有用的組件
6.6總結
第7章 創建組件:(二)
7.1從頭開始建立組件
7.2時鐘組件
7.2.1了解TCCClock
7.2.2TCCColorClock
7.2.3創建FancyClock
7.3為組件創建圖示
7.4ToolsAPI:PropertyEditor和 ComponentEditor
7.4.1五個主要的ToolsAPI
7.4.2PropertyEditor
7.4.3關於註冊你自己的組件以及
ComponentEditor的更多知識
7.4ComponentE山tor
7.5不可視的組件
7.6FindAllW程式
7.6.1使用TFileIterator遍歷目錄
7.6.2什麼時候應該把對象做成不可見組件
7.6.3AllDirs單元和FileIter單元
7.6.4遍歷目錄
7.6.5使用FindFirstFindNext和FindC1ose
7.6.6創建事件處理程式
7.7CompDirs程式
7.8TCCPickDirDlg
7.9組件模板
7.10 ActiveX控制項
7.11總結
第三部分 資料庫編程
第8章 欄位和資料庫工具
8.1從關係資料庫開始
8.1.1關係資料庫模型的優勢
8.1.2 簡單的邏輯設定:關係資料庫的基礎
8.1.3DBD和DatabaseExplorer中的索引和關鍵字
8.2 重點規則:給每個表建立一個關鍵字
8.2.1一對多的關係:數據和索引
8.2.2用主關鍵字和主索引工作
8.2.3用副索引和外部關鍵字工作
8.2.4關鍵字的重要性
8.3用資料庫工具瀏覽和運算元據庫
8.3.1瀏覽DBDEMOS資料庫的關鍵字和索引
8.3.2用DatabaseDesktop創建索引
8.3.3創建別名
8.3.4使用DatabaseDesktop創建主關鍵字和外部關鍵字
8.3.5探究引用完整性
8.3.6關係資料庫和聯結
8.3.7 聯結和QBE
8.4FieldsEditor
8.5計算欄位
8.6運行期間的TDBGrid
8.6.1在運行中控制DBGrid的Options屬性
8.6.2運行時顯示DBGrid選項
8.7使用TDBGrid列
8.7.1改變TDBGird對象的標題
8.7.2 改變格線里的整列
8.7.3改變格線里一行的顏色
8.7.4 改變列寬
8.7.5在TDBGrid里隱藏列
8.7.6顯示可見欄位的列表
8.7.7運行時移動列
8.8查找欄位
8.9多記錄對象
8.10總結
第9章 平面檔案現實世界資料庫
9.1本章示例程式
9.2設計應用程式
9.2.1定義數據
9.2.2程式設計的焦點
9.3定義程式的外觀
9.4查找:處理Category欄位
9.5設定程式的命令結構
9.6查看應用程式的“粗略草稿
9.7創建自己的對象
9.8創建最終的程式
9.9切換進和切換出唯讀模式
9.10排序數據
9.11查詢數據
9.12篩選數據
9.13標記檔案
9.14設定顏色
9.15使用註冊表
9.16剪貼簿:剪下、複製和貼上
9.17總結
第10章 關係式資料庫
10.1現實世界的數據
10.2測試關聯地址程式
10.3kdAdd代碼
10.3.1使用kdAdd程式
10.3.2為kdAdd建立索引
10.3.3查詢記錄
10.3.4插入數據和取消操作
10.3.5刪除數據:程式的數據模組初覽
10.3.6數據模組:級聯刪除
10.3.7數據模組:總體登記
10.3.8在字元串資源中加入錯誤字元串
10.3.9About框
10.4使用kdAddExplore程式
10.4.1使用TSession
10.4.2kdAddExplore程式的代碼
10.4.3用TTreeView顯示系統資料庫
10.4.4 展開TTreeView節點
10.4.5為TTreeView加入可用表的列表
10.4.6找到索引和欄位
10.4.7顯示別名和別名參數
10.5總結
第11章 使用本地InterBase伺服器
11.1從InterBase開始
11.1.1資料庫和工作市場
11.1.2設定本地InterBase
11.1.3設定InterBase別名
11.2創建資料庫
11.2.1使用WISQL
11.2.2創建表
11.3利用WISQL管理資料庫
11.4事務處理
11.4.1創建TRANSACT程式
11.4.2使用TRANSACT程式
11.4.3理解事務處理
11.5高速快取更新
11.6多對多關係
11.7安全和InterBaseServerManager
11.7.1定義表的訪問權力
11.7.2利用InterBaseServerManager備份表
11.8總結
第12章 InterBase編程
12.1關於Music程式
12.2設計Music程式
12.2.1創建資料庫方案
12.2.2修改表:空或非空
12.2.3重新命名現有表中的欄位
12.2.4創建Blob欄位
12.2.5主關鍵字和外部關鍵字
12.3在Music表創建索引
12.4 生成器、觸發器和存儲過程
12.4.1不要在活動索引上使用觸發器
12.4.2使用存儲過程
12.4.3來自Delphi端的存儲過程
12.5伺服器端規則和客戶端規則
12.6Music程式界面概述
12.7使用子窗體
12.8Music程式的代碼
12.8.1使用Music程式
12.8.2禁止密碼:TdataBase對象
12.8.3FormCreate事件
12.9使用Music程式中的數據
12.10向資料庫提出一個問題:簡短的SQL入門
12.10.1不返回數據集合的存儲過程
12.10.2查看數據範圍
12.11總結
第四部分 COM
第13章 COM接口和基礎
13.1理解COM接口
13.1.1COM是什麼?
13.1.2COM和視窗
13.1.3即插即用應用程式
13.1.4 COM的問題
13.1.5UNIX上的COM
13.1.6COM+和COM的未來
13.2接口介紹
13.2.1新接口類型
13.2.2接口不是類
13.2.3不能直接實現接口
13.2.4 利用類實現接口
13.2.5調用接口的方法
13.2.6破壞接口
13.3接口背後的理論
13.3.1使用接口的原因
13.3.2維護或更新接口
13.4 創建和使用COM接口
13.4.1理解GUID
13.4.2關於註冊表和GUID所有內容
13.4.3理解IUnknown
13.4.4 實現IUnknown
13.4.5為接口指定GUID
13.4.6幻數
13.4.7UnknownByUser程式的注釋
13.5高級接口問題
13.5.1多個接口
13.5.2方法解析語句
13.5.3Implements偽指令
13.5.4虛方法表
13.6總結
第14章 TC0mObjectTTypedComObject以及類型庫
14.1樣例程式
14.2TComObject
14.2.1在DLL中放置普通接口
14.2.2IClassFactory
14.2.3ISystemInfo接口
14.2.4 註冊DLL
14.2.5從執行檔訪問存儲在DLL中的COM對象
14.2.6 越過程式邊界編組數據
14.2.7編組數據
14.2.8Variant數組
14.2.9調用ISystemInfo數據
14.3類型庫和查詢對象
14.3.1創建類型庫
14.3.2 創建查詢類型庫的客戶程式
14.3.3檢索ITypeInfo
14.3.4 獲取接口信息
14.4 總結
第15章 創建COM自動化伺服器和客戶程式
15.1理解OLE自動化客戶程式和伺服器
15.2 建立簡單的COM伺服器和客戶程式
15.2.1建造簡單的伺服器
15.2.2在伺服器上添加方法
15.2.3查看生成的原始碼
15.2.4添加接口屬性
15.2.5建立簡單客戶程式
15.2.6通過TCOMInterface來調用方法
15.2.7通過dispinterface調用方法
15.2.8通過Vaeiant調用方法
15.3IDispatch 雙重接口和dispinterface
15.3.1從Word調用SimpleAutoServer
15.3.2VTable和雙重接口
15.4 類型庫
15.4.1什麼是類型庫
15.4.2創建類型庫
15.4.2有效的自動化類型
15.5用EmptyParam忽略參數
15.6註冊
15.7自動編組數據
15.8從一個CoClass得到兩個或更多的接口
15.9總結
第16章 用De1phi完成Word和Excel自動化
16.1自動化Office應用程式的系統要求
16.2啟動Delphi和Excel
16.2.1啟動Excel
16.2.2使用COMObj
16.2.3了解Excel的簡單自動化
16.2.4比較接口和Variant
16.2.5理解CreateOleObject
16.2.6Variant和類型
16.2.7創建Excel自動對象
16.3了解Excel自動化對象
16.3.1在APplication對象內訪問各種對象
16.3.2使用自動化
16.4在Excel和Word間共享圖表
16.4.1創建電子表格
16.4.2創建圖表
16.4.3使用SeriesCollection對象
16.5從Excel向Word複製數據
16.5.1Word內部的自動化
16.5.2傳送文檔
16.6總結
第五部分 Internet編程
第17章 接口和InternetExplorer
17.1Variant與接口的對比
17.1.1 補救接口
17.1.2使用類型庫
17.2本章所需檔案
17.3使用Word和Exce1
17.3.1使用Excel和Word接口
17.3.2比較Variant和接口技術
17.4 使用IE和TwebBrowser
17.4.1開始:訪問WebPage中的元素
17.4.2運行時在瀏覽器上處理
HTMI
17.5在瀏覽器內放置ActiveX控制項
17.6總結
第18章 WebBroker: CGI和ISAPI
18.1WebModule
18.2WebServerApplicationWizard
18.2.1CGI
18.2.2WinCGI
18.2.3ISAPI/NSAPI
18.2.4CGI與ISAPI
18.3WebBroker組件
18.3.1TWebModule
18.3.2 TWebResponse
18.3.3 TWebRequest
18.4 InreaBob
18.5TPageProducer
18.6TDataSetPageProducer
18.7瀏覽狀態
18.7.1FatURL
18.7.2Cookie
18.7.3 隱含欄位
18.8高級網頁的生成
18.9TDaraSetTableProducer
18.10DatabaseWebApplicationWizard
18.11TQueryTableProducer
18.12總結
第19章 WinINet和FTP
19.1理解WinINet FTP和TCP/IP
19.1.1 所需檔案
19.1.2確保FTP在系統中運行
19.1.3安裝TCP/IP應該注意的問題
19.2FTP使用WinINet
19.2.1使用InternetOpen
19.2.2使用InternetConnect
19.2.3獲得當前目錄
19.2.4 在目錄中查找檔案(一)
19.2.5在目錄中查找檔案(二)
19.2.6檢索檔案(一)
19.2.7創建回調
19.2.8檢索檔案(二)
19.2.9傳送檔案到伺服器的簡單方法
19.2.10刪除檔案
19.2.11創建和刪除目錄
19.3在程式中使用FTP控制項
19.3.1連線伺服器
19.3.2回響OnNewDir事件
19.3.3改變目錄
19.3.4 跟蹤檔案傳送
19.4總結
第六部分 分散式編程
第20章 DCOM
20.1COM和分散式體系結構
20.1.1 什麼是DCOM
20.1.2在Windows95/98和WindowsNT上運行DCOM伺服器
20.1.3作為DCOM伺服器使用Windows98
20.2 簡單的DCOM客戶程式和伺服器
20.2.1建立伺服器
20.2.2理解Safecall
20.2.3機器之間編組數據
20.2.4創建DCOM客戶程式
20.2.5使用遠程對象
20.3再訪問SystemInformation程式
20.4輕量遠程數據集
20.4.1理解DataCOMServer程式
20.4.2訪問遠程數據集的DataCOMC1ient
20.4.3理解DataCOMClient
20.4.4編輯數據行
20.5程式數據和自動化數據
20.6測試遠程調試系統
20.7總結
第21章 MIDAS
21.1多層計算概述
21.1.1什麼是MIDAS
21.1.2分散式計算的目的
21.1.3公文包模型概述
21.1.4術語
21.1.5查找調度程式
21.2技術細節:使用分散式數據集
21.2.1建立簡單的MIDAS應用程式
21.2.2創建SimpleMidasServer
21.2.3理解伺服器
21.2.4導出TProvider接口
21.2.5為客戶應用程式準備伺服器
21.2.6創建簡單的MIDAS客戶程式
21.2.7理解簡單的MIDAS客戶程式
21.2.8遠程訪問伺服器
21.2.9使用套接字代替DCOM
21.3建立一對多應用程式
21.4 建立遠程數據客戶應用程式
21.4.1更新和刷新數據
21.4.2公文包模型
21.4.3PacketRecords
21.5錯誤處理
21.6 伺服器端邏輯與客戶端邏輯
21.7所需的DLL
21.8使用OLEnterprise
21.9 總結
第22章 AcriveForm
22.1介紹ActiveForm
22.2建立ActiveForm
22.3配置在InternetExp1orer里使用的ActiveForm
22.3.1為ActiveForm設定選項
22.3.2連線到ActiveForm上
22.3.3了解OCCACHE
22.4 使用CAB檔案和包
22.4.1理解INF檔案
22.4.2許可證問題
22.5在Word中運行AcriveForm
22.5.1註冊應用程式
22.5.2在Microsoft歲ord里運行窗體
22.6使用ActiveFOrm模板
22.7套接字和AcriveForm
22.7.1套接字概述
22.7.2建立套接字支持的MIDASActiveForm
22.7.3創建基於MIDAS的ActiveForm
22.8總結
第23章 MTS
23.1什麼是MTS
23.2如何安裝MTS
23.3創建簡單的MTS伺服器
23.4 創建簡單的MTS客戶程式
23.5調用本地對象
23.6用MTS註冊對象
23.7遠程調用對象
23.8創建簡單的MTS資料庫伺服器
23.9創建簡單的MTS資料庫客戶程式
23.10處理MTS事務
23.11建立跨越多個伺服器的MTS示例
23.12Rocket程式的代碼
23.13總結
第24章 CORBA
24.1理解CORBA
24.1.1什麼是CORBA
24.1.2比較DCOM和CORBA
24.1.3什麼是ORB
24.1.4什麼是SmartAgent
24.1.5什麼是BOA
24.1.6什麼是代理、存根和框架
24.1.7理解Delphi和CORBA
24.2兩個重要的CORBA存儲庫
24.2.1什麼是InterfaceRepository
24.2.2什麼是ImplementationRepository
24.3簡單的CORBA對象
24.3.1伺服器
24.3.2客戶程式
24.3.3理解客戶程式
24.3.4理解CORBA存根
14.3.5理解CORBA框架
24.4理解伺服器的IDL接口
24.5簡單的CORBA動態項目
24.6簡單的CORBA資料庫對象
24.6.1 創建CORBA資料庫伺服器
24.6.2創建客戶程式
24.7利用VisiBrokerManager和OSFind
24.8總結
第25章 Delphi、Java和C++
25.1在Delphi和Java中使用CORBA
25.2從Delphi調用Java伺服器
25.3從C++Builder調用DelphiCORBA伺服器
25.3.1用C++建立CORBA伺服器並從Delphi調用
25.3.2理解BCBCorbaserver
25.4 總結
第七部分 遊戲編程
第26章 VCL圖形類
26.1WindowsGDI與VCLTCanvas
26.1.1理解GDI
26.1.2 VCL使圖形編程更容易
26.2使用TCanvas
26.3研究與使用畫刷
26.3.1TBeush.Color屬性分析
26.3.2TBrush.Style屬性分析
26.3.3TBrush.Assign方法分析
26.4 研究與使用畫筆
26.4.1TPen.Style屬性分析
26.4.2TPen.Width屬性分析
26.4.3TPen.Mode屬性分析
26.5研究與使用字型
26.5.1TFont.Height屬性分析
26.5.2TFont.Size屬性分析
26.5.3TFont.Name屬性分析
26.5.4 TFont.Style屬性分析
26.6 研究與使用TCanvas.PenPos
26.7研究與使用TCanvas.ClipRect
26.8研究與使用TCanvas.CopyMode
26.9研究與使用TCanvas.Pixels
26.10 分析與理解TCanvas方法
26.11 MainBrush範例代碼
26.11.1 OnCreate事件
26.11.2FormShow方法
26.11.3設定畫筆模式
26.11.4使用Fonts
26.11.5在畫布上畫出形狀
26.11.6使用CopyMode
26.11.7修改ClipRect
26.12其他名稱的線條
26.13 深入研究VCL
26.13.1深入了解TColor
26.l3.2Colors樣本項目
26.13.3OnChange事件處理程式
26.14 調色板
26.15 深入了解Windows的圖形檔案格式
26.15.1分析點陣圖和DIB
26.15.2分析圖示
26.15.3分析元檔案
26.16分析TPaintBox和Tlmage
26.17再談點陣圖
26.18 總結
第27章 DirectDraw
27.1理解DirectDraw
27.1.1什麼是DirectDraw
27.1.2 關於雙緩衝的幾點想法
27.1.3硬體與仿真
27.2 一個簡單的DirwreDraw程式
27.3釋放接口
27.3.1進入獨占模式和改變螢幕解析度
27.3.2DirectDraw表面是什麼
27.3.3向螢幕寫文本
27.3.4 交換表面
27.3.5釋放記憶體
27.4平滑動畫
27.5使用點陣圖
27.6遊戲資源
27.7總結
第28章 更多的DirectX技術
28.1DirectSound
28.1.1 初始化DirectSound
28.1.2枚舉聲音驅動程式
28.1.3使用DirectSOundBuffer
28.1.4 打開WAV檔案
28.1.5播放聲音檔案
28.1.6播放大檔案
28.1.7一次播放兩個WAV檔案
28.2創建DirectX遊戲
28.2.1創建DelphiMan程式
28.2.2實現DelphiMan程式的注意事項
28.2.3“機器人物 的控制
28.2.4小結DelphiMan程式
28.3瀏覽Direct3D
28.4關鍵的3D技術
28.5總結
配套光碟內容