C++ -Beispiele

MyProjekt

Dieses einführende Beispiel soll den Umgang mit der integrierten Entwicklungsumgebung (IDE) Delphi2007 zeigen. Das Prinzip der Programmierung grafischer Oberflächen wird anhand typischer Klassen (TButton, TEdit, TCheckBox) gezeigt.

MyMemo

Zur Anzeige werden häufig Objekte der Klasse TMemo genutzt.

  • Eine wichtige Eigenschaft dieser Klasse ist "Lines". Es wird gezeigt, wie man Lines hinzufügt, löscht, ersetzt.
  • Eine weitere Eigenschaft ist "Text". Diese erlaubt das Speichern und Laden des Memo-Inhaltes in/aus einer Textdatei.
  • TMemo kann nur eine Textfarbe, eine Schriftart/-stil/-größe annehmen. Reicht das nicht aus, muss man die Klasse TRichEdit nutzen (siehe "MyMainMenue")

Anleitung.DOC     Programm.EXE

MyEventMonitor

Viele Objekte können während der Laufzeit Ereignisse auslösen, z.B. "OnClick".

 

  • Anhand dieses Projektes sollen wichtige Ereignisse des TButton-Objektes Button1 in einem Memo angezeigt werden.
  • Es ist viel los, wenn man eine grafische Oberfläche nutzt. Jede Aktion der Eingabegeräte Maus und Tastatur hat ein oder mehrere Ereignisse zur Folge.

Anleitung.DOC      Programm.EXE

MyMainMenu

Schwerpunkte dieser Übung sind:

  • Einrichtung eines Hauptmenüs mittels der Komponente TMainMenu. Die Verwendung von File-Dialogen mittels TOpenDialog, TSaveDialog.
  • Die Nutzung der Klasse TRichEdit und hier insbesondere die Änderung der Textfarbe mittels TColorDialog und die Änderung von Schriftart und Schriftstil mittels TFontDialog.

Anleitung.DOC   Programm.EXE

MyDataTypes

Der Umgang mit grundlegenden Datentypen, wie Integer, Double, AnsiString soll vermittelt werden. Der Zugriff erfolgt direkt oder über Zeiger. Im Mittelpunkt steht die Typumwandlung (typecasting) von Integer|Real in String und umgekehrt.

Anleitung.DOC    Programm.EXE

MyCalculator

Es soll ein Taschenrechner für die Grundrechenarten programmiert werden. Folgende Lernziele werden angestrebt:

  • Erweiterter Umgang mit der Klasse TBitBtn
  • Wie kann man für mehrere Objekte eine gemeinsame Ereignisbehandlung programmieren (z.B. für alle Zifferntasten oder alle Operationstasten)?
  • Wie kann man Programmausnahmezustände (Exceptions) durch fehlerhafte Bedienung verhindern, wenn z.B. Alphazeichen (46,9 * abc) eingegeben werden oder bei Division durch Null?

Anleitung.DOC    Programm.EXE

MyCalculatorPlus

Erweiterung des Projektes MyCalculator in Richtung Bedienfehlertoleranz. Folgende Lernziele werden angestrebt:

  • Einfache Maßnahmen zur Vermeidung fehlerhafter Bedienungen von Anwendungen, durch TEdit.ReadOnly:=True
  • Eingabekontrolle durch Programmierung eines Automaten, der folgende Bedienablauf erzwingt:
    • Eingabe Operator
    • Eingabe Operand B
    • Berechnung.
    • Eingabe Operand A

Anleitung.DOC    Programm.EXE

MyCanvas

Oft will man Grafiken darstellen, z.B. Graphen von Funktionen. Dazu verwendet man die Klasse TCanvas (Zeichenfläche).
Die Zeichenfläche steht aber nur zur Laufzeit zur Verfügung.

Folgende Klassen habe eine Eigenschaft vom Typ TCanvas: TForm, TPaintBox, TImage, TBitMap.
In diesem Beispiel soll der grundlegende Umgang mit der Klasse TCanvas vermittelt werden.

Anleitung.DOC     Programm.EXE

MyThread1

Kommt ein Programm zum Ablauf, wird es zum Prozess. Werden in dem Programm z.B. Schleifenanweisungen mit viel Wiederholungen oder blockierende API-Funktionen aufgerufen, blockiert die Anwendung temporär oder für immer!

Besteht eine solche Gefahr, erzeugt man für diese Programmteile einen nebenläufigen Thread. Dieses Beispiel soll das Blockadeverhalten ohne und mit Thread zeigen.

Anleitung.DOC    Programm.EXE

MyTread2

Im Beispiel MyThread1 wurde gezeigt, dass Multi-Thread-Anwendungen oft unumgänglich sind. Im Beispiel wird der allgemeine Ablauf bei der Nutzung von Threads gezeigt:

  • Einen Nachkommen von TThread anlegen,
  • Erzeugung und Initialisierung des Thread,
  • Nutzung,
  • Beendigung des Thread

Anleitung.DOC   Programm.EXE