Home / LinuxUser / 2002 / 10 / Linux-Programmierung mit Kylix, Teil 1

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Griechischer Workshop

Linux-Programmierung mit Kylix, Teil 1

Erste Orientierung in der IDE mit einem praktischen Beispiel

Wir wollen uns jetzt erst einmal in Kylix orientieren. Wie ginge das besser als mit einem praktischen Beispiel? Kylix besteht aus einer Reihe eigenständiger Fenster, die frei auf dem Desktop positioniert werden können (etwa so, wie es auch bei GIMP der Fall ist - siehe Abbildung 2). In der Grundeinstellung startet Kylix mit der Anzeige eines leeren Formulars (das bildet später den Anzeigebereich des Programms - während der Programmerstellung spricht man vom Formulardesigner) bzw. dem alternativ angezeigten Quelltext-Editor (siehe Abbildung 3), dem Objektinspektor zur visuellen Spezifizierung der Eigenschaften und Reaktionen von Komponenten des Programms sowie der Komponentenpalette, aus der die Komponenten auf das Formular gezogen werden und wo sich die Menü- bzw. Befehlsstruktur von Kylix wiederfindet.

Dazu sind bereits diverse Dinge automatisch generiert worden, um mit wenigen Aktionen ein funktionstüchtiges Programm zur Verfügung zu haben. In den folgenden Teilen des Workshops werden wir uns der IDE und ihrer Bestandteile sowie der zugrundeliegenden Projekt- und Syntaxstrukturen genauer annehmen. Wir wollen jetzt einfach ein erstes Programm mit Kylix erstellen. Die einzelnen Schritte sollten exakt nachvollzogen werden - insbesondere in Bezug auf die Syntax und die automatisch durch Kylix generierten Elemente. Beachten Sie aber, dass die IDE von Kylix sehr weitreichend konfiguriert werden kann. Wundern Sie sich nicht, wenn nicht alle Details so aussehen, wie hier gezeigt bzw. beschrieben.

Here we go

Wenn Sie den Quelltext-Editor statt eines Formulars sehen, klicken Sie ihn an und drücken [F12]. Der Formulardesigner wird angezeigt. Erneutes Drücken von [F12] schaltet wieder zum Quelltext-Editor zurück.

Abbildung 3: Der Quelltext-Editor von Kylix

Wenn die IDE das Formular anzeigt, befinden Sie sich im grafischen Programmiermodus. In der Komponentenpalette finden Sie verschiedene Registerkarten. Deren Umfang hängt davon ab, welche Version von Kylix sie verwenden. Wir beschränken uns auf die Möglichkeiten der Open Edition. In den anderen Versionen finden Sie nur zusätzliche Registerkarten. Selektieren Sie das Register Standard. Dort drücken Sie das Symbol eines Buttons nieder (beschriftet mit OK). Die Maustaste lassen Sie dann los, bewegen den Mauscursor auf das Formular, drücken dort erneut die linke Maustaste und ziehen die Maus im gedrückten Zustand über das Formular. Wenn Sie die Maustaste loslassen, haben Sie eine Schaltfläche auf dem Formular erzeugt. Die Schaltfläche wird in selektiert angezeigt, was Sie daran erkennen können, dass die Schaltfläche mit kleinen Vierecken markiert ist. Über diese Anfasser können Sie Breite und Höhe der Schaltfläche verändern. Passen Sie die Größe sinnvoll an. Wenn Sie die Schaltfläche innerhalb der Komponentenfläche anklicken, können Sie sie per Drag & Drop verschieben. Fügen Sie dem Formular noch zwei weitere Schaltflächen hinzu und ordnen Sie alle drei untereinander an. Sorgen Sie dafür, dass Breite und Höhe der Schaltflächen gleich sind. Jetzt wählen Sie noch in der Komponentenpalette das mit dem Buchstaben "A" beschriftete Symbol aus. Damit erzeugen Sie neben den Schaltflächen ein so genanntes Label: Das ist eine Komponente, die üblicherweise zur Beschriftung anderer Komponenten verwendet wird.

Abbildung 4: Die Registerkarten der Komponentenpalette mit der Button- und Label-Komponente im Register Standard

Lassen Sie das Programm nun innerhalb der Kylix-IDE laufen, indem Sie einfach [F9] drücken. Sie erhalten nach kurzer Zeit ein voll funktionstüchtiges Programmfenster, das Sie in der Position verschieben oder in der Größe verändern können. Ebenso können Sie das Programmfenster mit den drei üblichen Schaltflächen am rechten Rand oben zu einem Icon verkleinern, einem Vollbild vergrößern oder schließen.

Klicken Sie die von Ihnen erzeugten Buttons an. Was passiert? Nichts? Nein, nicht ganz richtig. Zumindest wird das Niederdrücken bereits optisch dargestellt. Aber wir haben noch nicht angegeben, was eigentlich bei einem Klick auf einen der Schaltflächen geschehen soll. Das machen wir jetzt. Beenden Sie also das Programm mit dem Schließbutton.

Wir wenden uns nun dem Objektinspektor zu. Selektieren Sie den obersten Button im Formular und betrachten Sie den Objektinspektor. Wenn dieser nicht sichtbar ist, drücken Sie [F11]. Über den Inspektor können Sie die Eigenschaften der ausgewählten Objekte (also hier des Buttons) sehen und meist auch verändern. Sehr wahrscheinlich wird eine Eigenschaft mit Namen Caption vorselektiert sein, und dort wird der Wert "Button1" stehen. Wenn Sie im Eingabefeld rechts daneben den Text "Ende" eingeben (siehe Abbildung 5), sehen Sie die Wirkung unmittelbar im Formular. Die Beschriftung der ausgewählten Schaltfläche ändert sich mit jedem eingegebenen Zeichen.

Abbildung 5: Die Eigenschaft Caption im Objektinspektor ist für die Beschriftung einer Komponente verantwortlich

Jetzt sollten Sie einen Doppelklick auf die Schaltfläche ausführen. Sie wechseln dadurch automatisch vom Formulardesigner zum Quelltext-Editor. Dort ist durch die Aktion bereits Quellcode generiert worden, der so aussehen sollte:

procedure TForm1.Button1Click(Sender: TObject);
begin
end;

Fügen Sie zwischen begin und end; folgende Zeile ein:

Application.Terminate;

Beachten Sie, dass Ihnen Kylix hilft, wenn Sie das Wort "Application" und dann einen Punkt eingeben. Im folgenden Popup-Fenster werden alle erlaubten Syntaxstrukturen angezeigt.

Abbildung 6: Im Quelltext-Editor erhalten Sie oft Hilfe, wenn Sie einen Kylix bekannten Begriff (ein Objekt) und einen Punkt eingeben

Was wir hier ausgewählt haben, ist das Programmende. Dieses wird ausgelöst, wenn der Anwender auf diesen Button klickt. Sorgen wir nun noch dafür, dass auch die anderen Schaltflächen eine Funktionalität erhalten. Wechseln Sie zum Formulardesigner ([F12]) und wählen Sie die mittlere Schaltfläche aus. Beschriften Sie diese mit "Löschen". Dann führen Sie wieder einen Doppelklick darauf aus. In der automatisch generierten Code-Schablone notieren Sie folgende Anweisung:

label1.Caption:=' ';

Dann kümmern wir uns noch um die unterste Schaltfläche. Wechseln Sie zum Formulardesigner und wählen Sie sie aus. Beschriften Sie diese mit "Schreiben". Nach erneutem Doppelklick auf den Button geben Sie in der Code-Schablone Folgendes ein:

label1.Caption:='Safety First';

Zu guter Letzt passen Sie die Größe des Formulars so an, dass die drei Buttons und das Label ohne Platzverschwendung angezeigt werden. Das können Sie mit der Maus erledigen, aber wir wollen es diesmal mit dem Objektinspektor durchführen. Wählen Sie also das Formular selbst aus und experimentieren Sie mit den Eigenschaften Height und Width: Diese legen Höhe und Breite einer Komponente (und auch des Formulars selbst) fest (siehe Abbildung 7).

Abbildung 7: Über die Eigenschaft Height und Width kann eine Komponente im Objektinspektor in der Größe verändert werden

Lassen Sie das Programm nun laufen ([F9]) und testen Sie die Schaltflächen. Die oberste Schaltfläche beendet das Programm, die mittlere löscht das Label und die unterste beschriftet das Label mit dem angegegebenen Text.

Abbildung 8: Das fertige Kylix-Programm

Herzlichen Glückwunsch. Sie haben Ihr erstes Kylix-Programm geschrieben und zum Laufen gebracht. Das war wirklich nicht schwer, aber die Funktionalität scheint auch nicht besonders beeindruckend zu sein. Wenn Sie jedoch versuchen, so ein Programm mit einer anderen Programmierumgebung unter Linux zu realisieren, werden Sie zu schätzen wissen, was Ihnen Kylix an Vereinfachungen geliefert hat. Im nächsten Teil des Workshops wollen wir die IDE von Kylix sowie die Arbeit mit Projekten genauer behandeln. Dazu schauen wir uns die verschiedenen Arten der Kylix-Dateien an und spielen einige weitere Beispiele auf Basis der Grundkomponenten von Kylix durch.

Kasten 1: Die verschiedenen Kylix-Versionen

Kylix gibt es in verschiedenen Versionen. Das beginnt am unteren Ende der Leistungsskala mit der kostenlosen Open Edition. Sie reicht bereits aus, um grafische Programme unter Linux zu erstellen, und kann Hobby-Programmierern und Einsteigern beim Einstieg in die Programmierung helfen. Wir wollen uns in dem Workshop auf die Möglichkeiten dieser Version beschränken. Im Wesentlichen wird in dieser Version statt der vollständigen CLX-Komponentenbibliothek eine eingeschränkte Version (die Open-Source-Variante FreeCLX) verwendet. Dazu kommt, dass die Weitergabe von damit erstellten Programmen auf das GPL-Lizenzmodelle beschränkt ist. Die beiden kommerziellen (und nicht gerade billigen) Versionen von Kylix sind die Professional Edition und die Enterprise-Version. Beide umfassen die Möglichkeiten der Open Edition und bieten zusätzliche Features im Bereich Datenbanken und Web-Programmierung. In der Enterprise-Version kommen WebSnap, SOAP, XML und noch einiges mehr hinzu.

Kasten 2: Bezug von Kylix

Die Open Edition und eine 60-Tage-Trial-Version der kommerziellen Enterprise-Version werden von Borland im Internet zum Download bereitgestellt (http://www.borland.com./products/downloads/download_kylix.html). Leider ist der Download nicht direkt möglich, sondern Sie müssen sich erst als Teil der Borland-Community registrieren. Zwar kann man beide Versionen von Kylix auch von anderen Quellen beziehen, aber außer dem Download spart man sich nichts. Nach der Installation benötigen Sie eine Seriennummer und einen Autorisierungsschlüssel zum Start des Programms, und diese Angaben erhalten Sie nur als Mitglied der Community auf Anforderung über die Web-Seiten von Borland etwa per Mail. Es ist bedauerlich, dass Borland so viele potentielle Kunden von einem Kylix-Test abhält. Lassen Sie sich nicht abschrecken und besorgen Sie sich die Freischaltangaben - Kylix ist den Aufwand wert.

Kasten 3: Die Installation und der erste Start

Bevor Sie mit Kylix arbeiten können, müssen Sie das Programm installieren. Wenn Sie eine Kylix-Version verwenden, die in Ihrer Distribution enthalten ist, erfolgt die Installation mit den zugehörigen Distributions-Tools wie etwa YaST (bei SuSE).

Die Installation von Kylix läuft meist rpm-basiert ab. Wie die genauen Installationsvorgänge ablaufen, hängt vor der Art Ihrer verfügbaren Installationsdatei ab. Wenn Sie eine gepackte Datei haben, extrahieren Sie diese zuerst. Nach der Dekomprimierung liegen die eigentlichen Setup-Dateien vor. Sie bieten mittlerweile den üblichen Komfort - das beinhaltet die Auswahl bestimmter Dateien, die Angabe des Zielverzeichnisses und andere Optionen. Die eigentliche Installation beginnt mit der Anweisung sh setup.sh in der Shell, wobei Sie sich im Verzeichnis befinden müssen, das die Installationsdateien enthält. In der Regel können Sie die Vorgaben der Setup-Routine akzeptieren. Hauptsächlich interessant ist das Verzeichnis, in das Kylix installiert werden soll. Sinnvolle Angaben sind das ~/kylix2 im Home-Verzeichnis des Anwenders (wenn nur ein Anwender damit arbeiten soll), /usr/local oder /opt. /p>

Glossar

Quelltext

Der vom Programmierer eingegebene Klartext, aus dem das Programm erzeugt wird. Diese Erzeugung nennt man "Compilieren".

CLX

Sowohl unter Kylix als auch Delphi ab Version 6 gibt es so genannte CLX-Komponenten (z. B. Buttons, Menüs, Listen, Textfelder). CLX (sprich "Klicks") steht für Component Library for Cross Platform: Sie soll ermöglichen, dass Quelltext zwischen verschiedenen Betriebssystemen ausgetauscht und dort weitgehend unverändert kompiliert werden kann.

IDE

Eine integrierte Entwicklungsumgebung oder englisch Integrated Development Enviroment wird kurz IDE genannt. Eine IDE umfasst in der Regel zumindest einen Editor zur Eingabe des Quelltextes, einen Compiler zum Übersetzen, eine Möglichkeit zum Ausführen eines Programms, Module zur Fehlersuche (so genannte Debugger) und noch Einiges mehr. Gerade im Fall "visueller" Entwicklungsumgebungen kommen Komponentenpaletten und andere grafisch bedienbare Tools hinzu. Zentrale Eigenschaft einer IDE ist, dass sämtliche Module aus einer gemeinsamen Oberfläche bedient werden können, ohne das Programmierwerkzeug zu verlassen.

Formulardesigner

Der Formulardesigner ist die Repräsentation eines Formulars, während das Programm visuell erstellt wird. Auf dem dargestellten Formularbereich können Komponenten platziert und verändert werden. Das kann sowohl mit der Maus, mit dem Objektinspektor als auch über Menüs erfolgen.

Objektinspektor

Der Objektinspektor zeigt die Eigenschaften und Ereignisse an, die für eine ausgewählte Komponente sinnvoll sind. Die meisten Eigenschaften können dort auch geändert werden. Natürlich verfügen nicht alle Komponenten über identische Eigenschaften und Ereignisse. Deshalb unterscheiden sich die Darstellungen im Objektinspektor je nach ausgewählter Komponente.

Anfasser

Die viereckigen Markierungen einer selektierten Komponente sind Anfasser (oder Anpacker), über die Sie bei gedrückter linker Maustaste die Größe einer Komponente verändern können. Auch ein Formular selbst kann darüber während des Designs angepasst werden.

Der Autor

Ralph Steyer ist ein zu Linux bekehrter Windows-Anwender, der mit Java die Windows-unabhängige Programmierung zu schätzen gelernt hat und sich beim Auftreten von Kylix freute, die alten Turbo-Pascal- und Delphi-Kenntnisse unter Linux nutzen zu können. Schreibt er gerade keine Artikel oder Bücher, treibt er viel Sport, zieht mit dem Motorrad durch den Taunus, hält Computer-Schulungen oder verteidigt sein Büro vor dem Eindringen seiner zwei Jahre alten Zwillinge. Zu erreichen ist er unter http://www.rjs.de.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 0 Punkte (1 Stimme)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...