www.ewlab.de
Delphi 2006
Delphi 2005
Kylix
Delphi 6
Delphi 5
Delphi 4
Impressum

Kylix-Untermenü

Informationen über das Kylix-Buch

Das Buch ist Ende Juli erschienen (zum Addison-Wesley-Katalog).

KylixPrelim

(größeres Bild)

Aktuelle Ergänzungen und Fehlerkorrekturen auf der Hauptseite des Buchs.

Hinweise zu Kylix 2 finden Sie hier.

 

Umschlagstext

Möchten Sie sich intensiv mit Kylix befassen? Dieses Buch bietet Ihnen eine umfassende Darstellung der Software-Entwicklung mit diesem Entwicklungssystem.

Kylix-Neulinge mit grundlegender Programmiererfahrung finden eine tiefgehende, hinter die Kulissen blickende Einführung in die Programmierumgebung. Für Umsteiger von anderen Sprachen werden die Grundlagen der Sprache Object Pascal komplett zusammengefasst. Das Buch eignet sich auch für Delphi-6-Anwender, die mit der CLX programmieren wollen.

Die Kernthematik – der Anwendung der CLX – wird in mehreren Stufen präsentiert: beginnend mit einer Einführung mit zahlreichen Beispielen für dialogorientierte Anwendungen über eine umfangreiche Grundlagenbeschreibung bis hin zu einer komplexen Grafikanwendung – dem TreeDesigner 3.5, mit dem Sie Klassenhierarchien flexibel anzeigen, editieren und ausdrucken können.

Spezielle Kapitel befassen sich mit der Komponentenentwicklung, der Einbettung der Kylix-Anwendung in die Linux-Umgebung sowie mit der Entwicklung von Datenbankanwendungen, wobei auch auf die Umstellung von mit Delphi erstellten BDE-Anwendungen eingegangen wird.

Auf der CD-ROM finden Sie die Beispielprogramme des Buchs sowie den kompletten Cross-Platform-Code des TreeDesigners und eine mit Delphi kompilierte ausführbare Windows-Datei.

Aus dem Inhalt

  • Funktionsweise der IDE
  • Beziehungen zwischen CLX und Qt
  • Formularvererbung und Frames
  • Icons und ListViews kombinieren
  • Docking von Fenstern
  • Dokument-View-Konzept, MDI
  • Drucken und Druckvorschau
  • Datenbanken mit dbExpress und Interbase, MyBase-Dateien, SQL
  • C- und C++-Bibliotheken nutzen
  • Externe Programme ausführen
  • Weltkoordinatensysteme, Skalierung und Clipping mit Qt
  • KDE-Widgets als Komponenten
  • XML (TreeDesigner-Dokumente in XML-Dateien speichern, XML-Dateien als Grafik anzeigen)

Inhaltsverzeichnis

(ergänzt mit Kurzbeschreibungen der Kapitel)
Schnellnavigation zu Kapitel 1 2 3 4 5 6 7 8

Kapitel 1 Die visuelle Programmierumgebung

Kapitel 1 beschreibt die Entwicklungsumgebung (IDE) und den grundlegenden Aufbau sowie die Funktionsweise einer Kylix-Anwendung. Sie können wählen zwischen einem Schnelleinstieg, der direkt bei einem kleinen Beispielprojekt beginnt, und einer ausführlicheren Einführung, die auch Hintergründe erläutert.

1.1 Kylix-Anwendungen sind ereignisorientiert

1.1.1 Zu jedem Anlass ein Ereignis
1.1.2 Ereignisse in Kylix

1.2 Von Formularen und Komponenten

1.2.1 Die Fensterhierarchie einer GUI-Anwendung
1.2.2 Formulare und Fenster
1.2.3 Komponenten

1.3 Der Entwicklungszyklus

1.3.1 Der Entwicklungszyklus in der Kylix-IDE
1.3.2 Übersicht über das Beispielprogramm

1.4 Die IDE und die visuellen Werkzeuge

1.4.1 Der Aufbau der IDE
1.4.2 Hilfe zu IDE und Sprachreferenz
1.4.3 Die Komponentenpalette
1.4.4 Entwerfen von Formularen
1.4.5 Dateiverwaltung
1.4.6 Der Objektinspektor
1.4.7 Property-Typen
1.4.8 Menüs
1.4.9 Grafiken

1.5 Ereignisse

1.5.1 Einführung in die Ereignisbearbeitung
1.5.2 Schnellübersicht: Pascal für Ereignisbearbeitungsmethoden
1.5.3 Eine Übersicht über die Formular-Unit
1.5.4 Die Ereignisse des Beispielprogramms
1.5.5 Methoden für die Statuszeile
1.5.6 Weiterer Progamm-Ausbau
1.5.7 Ereignisverknüpfung: Navigieren, verändern, lösen
1.5.8 Drei Blicke hinter die Kulissen

1.6 Bearbeiten von Projekten

1.6.1 Der Quelltext-Editor
1.6.2 Aufbau von Projekten
1.6.3 Die Projektverwaltung
1.6.4 Objektablage und Komponentenschablonen
1.6.5 Der Browser
1.6.6 To-Do-Listen

1.7 Der Debugger

1.7.1 Übersetzungsoptionen für den Debugger
1.7.2 Allgemeine Debugger-Fenster
1.7.3 Breakpoints
1.7.4 Variablen untersuchen
1.7.5 Code-Ausführung
1.7.6 Assertions

1.8 Komponenten kurz vorgestellt

1.8.1 Verwendung von Formularen als modale Dialoge
1.8.2 Komponenten zur Programmsteuerung
1.8.3 Listenelemente und die Sicherung ihres Inhalts
1.8.4 Eingabekomponenten
1.8.5 Ausgabekomponenten
1.8.6 Komponenten zu Gestaltung und Strukturierung

Kapitel 2 Die Sprache Object Pascal

Kapitel 2 widmet sich der Programmiersprache Object Pascal. Obwohl sein Schwerpunkt auf der objektorientierten Programmierung liegt, werden auch die Grundlagen von Pascal an geeigneter Stelle so zusammengefasst, dass sie sich auch Umsteiger aneignen können.

2.1 Überblick

2.1.1 Object Pascal für Umsteiger
2.1.2 Lexikalische Elemente
2.1.3 Compileranweisungen
2.1.4 Typen und Variablen
2.1.5 Konstanten und initialisierte Variablen
2.1.6 Gültigkeitsbereiche und lokale Variablen
2.1.7 Das Modulkonzept

2.2 Objekte und Klassen in Object Pascal

2.2.1 Der Aufbau von Objekten
2.2.2 Klassen und Instanzen
2.2.3 Die Klassendeklaration
2.2.4 Zugriff auf die Klassenelemente
2.2.5 Properties
2.2.6 Zugriffsbeschränkungen
2.2.7 Vererbung
2.2.8 Vorwärtsdeklaration von Klassen

2.3 Der Lebenslauf von Objekten

2.3.1 Initialisierung von Objekten: Konstruktoren
2.3.2 Aufräumen mit Destruktoren
2.3.3 Polymorphie durch virtuelle Methoden
2.3.4 TClass – die Klasse der Klassen
2.3.5 Klassenmethoden
2.3.6 Typinformationen zur Laufzeit
2.3.7 Kompatibilität mit Borland Pascal

2.4 Typen

2.4.1 Einfache Typen
2.4.2 Operatoren und Ausdrücke
2.4.3 Arrays
2.4.4 Die verschiedenen Stringtypen
2.4.5 Strukturierte Typen
2.4.6 Zeigertypen
2.4.7 Typenkompatibilität und Typenumwandlungen
2.4.8 Initialisierte Konstanten strukturierter Typen

2.5 Anweisungen und Funktionen

2.5.1 Pascal-Anweisungen
2.5.2 Prozeduren und Funktionen
2.5.3 Parametertypen
2.5.4 Überladen von Funktionen, Standardparameter
2.5.5 Prozedurtypen

2.6 Fehlerbehandlung mit Exceptions

2.6.1 Verhängung des Ausnahmezustandes
2.6.2 Exception-Klassen
2.6.3 Schadensbegrenzung mit finally
2.6.4 Behandeln der Exceptions
2.6.5 Optionen für Exceptions
2.6.6 Exceptions im Beispielprogramm

2.7 Interfaces

2.7.1 Abstrakte Basisklassen versus Interfaces
2.7.2 Verwendung eines Interfaces
2.7.3 IUnknown, Co-Klassen und andere Begriffe
2.7.4 Implementierung eines Interfaces
2.7.5 Interface-Mix-In

2.8 Funktionsbereiche der Laufzeitbibliothek

2.8.1 Dateiverwaltung
2.8.2 Dateieingabe und -ausgabe
2.8.3 Zeitformat und Zeitfunktionen
2.8.4 Formatierungs-/Stringfunktionen
2.8.5 Sonstige Funktionen

Kapitel 3 Die Komponentenbibliothek CLX

Kapitel 3 beschäftigt sich intensiv mit der CLX und reicht von der Untersuchung wichtiger CLX-Interna über die Beschreibung von Komponenten bis hin zu konkreten Beispielprogrammen. Besonderer Wert wurde dabei auf allgemeine Klassen wie TComponent, TControl und TWidgetControl gelegt, denn wenn Sie diese kennen, kennen Sie bereits einen großen Teil der Eigenschaften aller speziellen visuellen Komponenten.

3.1 Überblick über die CLX

3.1.1 Die grundlegenden Klassen
3.1.2 Komponenten
3.1.3 Visuelle Komponenten
3.1.4 Der Nachrichtenfluss

3.2 Die Beziehungen der Komponenten

3.2.1 Besitzhierarchie und Komponentenlisten
3.2.2 Die Fensterhierarchie
3.2.3 Die oberste Komponente: TApplication
3.2.4 TScreen

3.3 Grundlegende Gemeinsamkeiten von Steuerelementen

3.3.1 Grundlegende Eigenschaften
3.3.2 Maus- und Tastatureingaben
3.3.3 Aktionen beim Bewegen der Maus
3.3.4 Anzeigesteuerung
3.3.5 Kontrolle über Größe und Position
3.3.6 TWidgetControl

3.4 Formulare, TScrollingWidget und TScrollBox

3.4.1 TScrollingWidget und TScrollBox
3.4.2 Die verschiedenen Arten von Formularen
3.4.3 Eigenschaften und Ereignisse der Formulare
3.4.4 Arbeiten mit mehreren Formularen

3.5 Aufbau von Formularen und Verwendung von Dialogen

3.5.1 Steuerelemente in Gruppen
3.5.2 Gleichzeitige Behandlung mehrerer Komponenten
3.5.3 Steuerelemente in Arrays
3.5.4 Mehrseitige Dialoge
3.5.5 Formulardateien im Textmodus editieren
3.5.6 Verwenden der Standarddialoge

3.6 Komplexere Steuerelemente

3.6.1 Editierfelder und Memos
3.6.2 ListViews, IconViews und Bilderlisten
3.6.3 Baumanzeige-Komponenten (TreeViews)

3.7 Frames und verwandte Techniken

3.7.1 Formularvererbung
3.7.2 Frames

Kapitel 4 Weitere Klassen der CLX

Kapitel 4 setzt die in Kapitel 3 begonnene Behandlung der CLX fort, beschäftigt sich aber nicht mehr in erster Linie mit den visuellen Komponenten, sondern mit nicht-visuellen Klassen wie etwa Listenklassen und Klassen für Menüs und Threads sowie für die Grafikausgabe.

4.1 Grundlegende Datenstrukturen: TList und TStrings

4.1.1 TStrings
4.1.2 Ableiten einer History-Liste von TStringList
4.1.3 TList
4.1.4 Andere Container-Klassen

4.2 Textbasierte Konfigurationsdateien

4.2.1 Dateien im INI-Format
4.2.2 Speichern der History-Liste in einer INI-Datei
4.2.3 Die TStateSaver-Komponente

4.3 Streams und Ablageobjekte

4.3.1 Stream-Klassen
4.3.2 Der Inhalt von Streams
4.3.3 Polymorphe Objekte speichern
4.3.4 TReader und TWriter
4.3.5 Memory-Streams

4.4 Grafikausgabe

4.4.1 Die Klasse TCanvas
4.4.2 Zeichenwerkzeuge
4.4.3 Grafikmethoden
4.4.4 Besitzergezeichnete Komponenten

4.5 Grafiken als Objekte

4.5.1 Die drei TGraphic-Klassen
4.5.2 Bitmaps
4.5.3 TPicture
4.5.4 Bitmaps für eine OwnerDraw-Listbox
4.5.5 TDrawing und Metadateien

4.6 Menüs

4.6.1 Die Unit Menus
4.6.2 Dynamische Menüerweiterungen
4.6.3 Ein dynamischer Tastenkürzeleditor
4.6.4 Befehlslisten mit TActionList

4.7 Die Zwischenablage

4.7.1 Vordefinierte Zwischenablage-Operationen
4.7.2 TClipboard
4.7.3 Eigene Ablageformate

4.8 Threads

4.8.1 Multitasking-Typen
4.8.2 Threads in der CLX
4.8.3 Mehrere Threads und deren Synchronisation
4.8.4 Ein Utility mit dynamischer Thread-Anzahl

Kapitel 5 Kylix-Anwendungen in der Linux-Umgebung

Kapitel 5 behandelt die Einbindung einer Kylix-Anwendung in das Linux-System auf verschiedenen Ebenen, von der Kernel-Ebene bis hin zu KDE als Beispiel für einen grafischen Desktop: Es beschreibt, wie Sie mit Systemaufrufen die Funktionen des Kernels nutzen, wie Sie C-Bibliotheken in Kylix-Programmen aufrufen können, und wie auch mit C++-Bibliotheken eine Zusammenarbeit möglich ist.

5.1 Der Kernel und andere C-Bibliotheken

5.1.1 Aufruf von Bibliotheks-Funktionen allgemein
5.1.2 Deklarationen von externen Funktionen in Object Pascal
5.1.3 Aufruf der externen Funktionen
5.1.4 Typübersetzung von C nach Object Pascal
5.1.5 Ein Mini-Systemmonitor als Beispiel
5.1.6 X Window und die XLib
5.1.7 Shared Libraries mit Kylix

5.2 Konsolenanwendungen

5.3 Prozesse und Shells

5.3.1 Aufrufen anderer Programme und Tools
5.3.2 Eine allgemeine Programmstart-Routine
5.3.3 Ausführen von Shell-Skripten
5.3.4 Die Umgebung eines Prozesses

5.4 Die Anbindung an die Qt-Bibliothek

5.4.1 C++ und Object Pascal
5.4.2 Die Brücke von Qt zu Object Pascal
5.4.3 Das Weltkoordinatensystem von Qt

5.5 Ein KDE-Widget als Komponente

5.5.1 Ein fest eingebundenes KDE-Widget
5.5.2 Laden von Bibliotheken zur Laufzeit

Kapitel 6 Dokumentbasierte Anwendungen

Kapitel 6 demonstriert anhand der Beispielanwendung TreeDesigner 3.5 unter anderem die Entwicklung größerer, dokumentbasierter Anwendungen mit moderner Benutzerschnittstelle, Dokument-View-Konzept und mit der Ausgabe geräteunabhängiger Grafik auf Bildschirm und Drucker. Die CD-ROM enthält bereits einige Hierarchiegrafiken der CLX, die Sie mit dem TreeDesigner bearbeiten können.

6.1 Der TreeDesigner

6.1.1 Wahl eines Beispielprogramms
6.1.2 Spezielle Fähigkeiten
6.1.3 Kurzbeschreibung und Bedienung
6.1.4 Dateien auf der CD

6.2 Das Hauptfenster

6.2.1 Der Entwurf von Symbol- und Werkzeugleisten
6.2.2 Komponenten für die Zeichenfläche
6.2.3 Wichtige Menübefehle
6.2.4 Typische Formularaufgaben

6.3 Das Grafikdokument

6.3.1 Das Dokument-View-Konzept
6.3.2 Eine Klasse für das Grafikdokument
6.3.3 Eine Klasse für die Grafikobjekte
6.3.4 Baumstrukturen

6.4 Mausaktionen und Zeichnen

6.4.1 Die Methoden im TreeDesigner
6.4.2 Shift und Variationen eines Ziehvorgangs

6.5 Grafikausgabe und Scrolling

6.5.1 Ereignisgesteuerte Grafikausgabe
6.5.2 OnPaint und das Zeichnen von Objekten
6.5.3 Effiziente Grafikausgabe
6.5.4 Scrolling
6.5.5 Clipping

6.6 Skalierung, virtuelle Koordinatensysteme und Druckerausgabe

6.6.1 Window- und Viewport-Transformation
6.6.2 Das Koordinatensystem des TreeDesigners
6.6.3 Drucken

6.7 MDI-Anwendungen

6.7.1 MDI im Überblick
6.7.2 MDI- und SDI-Versionen des TreeDesigners
6.7.3 Verschmelzen von Menüs
6.7.4 Verwaltung der MDI-Kindfenster
6.7.5 Dynamisches Werkzeugleisten-Management
6.7.6 Globale Werkzeugleisten und Mauspaletten

6.8 Erweiterung der Benutzerschnittstelle

6.8.1 Tastatursteuerung
6.8.2 Docking von Fenstern
6.8.3 Interaktion mit Grafikobjekten
6.8.4 Drag&Drop

6.9 XML

6.9.1 XML-Grundlagen
6.9.2 Ein grafischer XML-Betrachter
6.9.3 XML-Dateiformate

Kapitel 7 Datenbankanwendungen

Kapitel 7 befasst sich mit Datenbankanwendungen. Es erläutert den Aufbau von Datenbanken, die Komponenten der DataCLX, über die Sie diese ansprechen, die allgemeine Funktionsweise einer Datenbankanwendung in Kylix, und es zeigt verschiedene Beispiele der Programmierung mit Feldern und Indizes. Umsteiger von Desktop-Datenbanken unter Windows wie dBase und Paradox finden Informationen zur Portierung ihrer Datenbanken nach Interbase.

7.1 Datenbank-Variationen und Datenzugriff

7.1.1 MyBase-Datenbanken
7.1.2 Interbase-Datenbanken
7.1.3 Portierung von Delphi-Desktop-Datenbanken
7.1.4 Datenzugriff mit Verbindungskomponenten

7.2 Von der Tabelle zum Browser

7.2.1 Das grundlegende Datenbankformular
7.2.2 Datensensitive Steuerelemente
7.2.3 Elementare Funktionen
7.2.4 Ein Browser für MyBase-Tabellen
7.2.5 Ein Browser für Interbase-Tabellen
7.2.6 Anwenden und Verwerfen von Updates

7.3 Programmieren mit Feldern

7.3.1 TField und die Fields
7.3.2 Persistente Felder und der Felder-Editor
7.3.3 Feld-Definitionen
7.3.4 Ein Beispielprogramm mit dynamischen Feldern
7.3.5 Die Daten des aktuellen Datensatzes
7.3.6 Eine Dateidatenbank
7.3.7 Zusatzfunktionen für die Anwendung

7.4 Sortieren, Suchen und Filtern

7.4.1 Methoden zum Suchen, Filtern und für Lesezeichen
7.4.2 Sortieren mit Indizes
7.4.3 Modusabhängige Filter- und Suchfunktionen
7.4.4 Aktualisieren der Dateidatenbank
7.4.5 Haupt-/Detailformulare und Sortieren

7.5 Eine Beispielanwendung

7.5.1 Definition der Datenbank
7.5.2 Das Datenmodul
7.5.3 Die Formulare
7.5.4 Updates und das Änderungsprotokoll
7.5.5 Mehrbenutzersimulation
7.5.6 Updates per SQL
7.5.7 Ein SQL-Monitor

Kapitel 8 Komponentenentwicklung

Thema von Kapitel 8 ist die Entwicklung eigener Komponenten. Das Kapitel beschreibt die hinter den CLX-Komponenten stehenden Konzepte und demonstriert die Entwicklung eigener Komponenten anhand von nützlichen Beispielen wie einer History-Kombobox, einer Echtfarben-Farbpalette und einem Tastenkürzeleditor für Menüs und Aktionslisten.

8.1 Das Komponentenkonzept von Kylix

8.1.1 Das Wesen einer Komponente
8.1.2 Überblick über die Komponentenentwicklung
8.1.3 Das Package-Konzept

8.2 Beispiele und Installation

8.2.1 Starthilfe durch den Komponenten-Experten
8.2.2 Eine Minimalkomponente
8.2.3 Installation von Packages und Komponenten
8.2.4 Eine sinnvolle Beispiel-Komponente

8.3 Die Schnittstelle zum Benutzer

8.3.1 Properties
8.3.2 Events
8.3.3 Events auslösen

8.4 Komponenten intern

8.4.1 Ereignisse in den Komponenten
8.4.2 Komponenten in der Formulardatei
8.4.3 Steuerung der Property-Speicherung
8.4.4 Die Schnittstelle zur Kylix-IDE

8.5 Erweiterung bestehender Komponenten

8.5.1 Verändern bestehender Komponenten
8.5.2 Erweiterung von TScrollBox
8.5.3 Die automatische History-Kombobox
8.5.4 Zusammenfassen mehrerer Komponenten

8.6 Entwicklung neuer Steuerelemente

8.6.1 Eine Testumgebung aufbauen
8.6.2 Die Schnittstelle der neuen Farbpalette
8.6.3 Implementierung der Komponente
8.6.4 Events mit Eingriffsmöglichkeiten
8.6.5 Komponenten- und Property-Editoren
8.6.6 Speichern
8.6.7 Vordefinierte Aktionen

8.7 Formulare als Dialogkomponenten

8.7.1 Eine Hülle für das Formular
8.7.2 Die automatische Aktivierung
8.7.3 Implementierung

8.8 Weitere Komponenten zum Buch

8.8.1 Anzeige von Verzeichnisstrukturen und Dateilisten
8.8.2 Abschalten von ausgewählten Meldungsfenstern
8.8.3 Delphi-Kompatibilitäts-Komponenten
8.8.4 Sonstige Komponenten

Anhang A: Rezeptverzeichnis

Anhang B: CLX-Hierarchiegrafiken des TreeDesigners

Schnellnavigation zu Kapitel 1 2 3 4 5 6 7 8

Diese Seite wurde am 03/12/13 10:25 erzeugt.

[Delphi 2006] [Delphi 2005] [Kylix] [Delphi 6] [Delphi 5] [Delphi 4] [Impressum]