Logo: Geos Online Print Archiv
G.O.P.A. - Geos Online Print Archiv
29.03.2024 Archiv  #  Recherche  #  Links  #  Kontakt  #  Gästebuch  #  Impressum

Index
Register
Login

Die Anzeige des Archivs erfolgt grafisch. Ändern

IZL Kurs Teil #4

Autor: Jürgen Heinisch

Unser bisheriges Programm zeigt im Aufbau eine geradlinige Reihenfolge. Objekt für Objekt wird definiert und dargestellt. IZL ist dabei so eingerichtet, daß es alle Objekte in der gerade zur Verfügung stehenden Fenstergröße untereinander anordnet. Erst wenn am unteren Ende des Fenster kein Platz mehr ist, dann wird rechts oben fortgesetzt bis unten usw.
So sind letztlich zwar alle Objekte dargestellt und versehen auch ihre Funktion, jedoch kann nur eine minimale Ordnung durch die bewußte Aneinanderreihung der Objekte erreicht werden.

Das ist für ein GEOS Programm nicht ordentlich genug. Um Abhilfe zu schaffen gibt es eine Funktion für Rahmen. Die Rahmen sind genaugenommen flächige Feldbereiche, welche in Position und Größe definiert werden können. Ob ein Rahmen angezeigt werden soll oder nicht kann über Parameter angegeben werden. Rahmen sind letztlich auch nur Objekte. Andere Objekte können auf die Rahmen Bezug nehmen. Durch geschickte Wahl der Reihenfolge der Rahmen und der darin anzuordnenden Objekte kann ein optisch gut aufbereitetes Programm erstellt werden.
Im aktuellen Listing sind die veränderten bzw. hinzugekommenen Zeilen fett gedruckt. Weitere Erklärungen finden sich im Listing und den Hinweisen zu Objekten.

 

Jürgen Heinisch


# IZL Programm Kursteil 4
Ergänzung des Programms mit Rahmen

   variables;     # Variablen definieren
   name1 ="";     # Textvariable
   name2 ="";     # Textvariable
   alter1 = 0;    # Zahlvariable
   alter2 = 0;    # Zahlvariable
   doppelname = "???";     # Textvariable
   mittelwert = "???";     # Textvariable
   x = 0;                  # Hilfszahlvariable
   end;           # Ende der Variablenliste

     #  Definition aller Objekte

   frame gesamt; vertical; center_h; box; end;
   # Rahmendefinition für den gesamten Bereich

   label l_titel, gesamt; display "Kursteil 4";
   # Ausgabe eines Programmtitel

   frame daten, gesamt; horizontal; box; end;
   # Rahmendefinition für Dateneingabebebereic

   frame tochter, daten, vertical; box; end;
   # Rahmendefinition für die Daten der Tochter

   label l_name1, tochter; display "Tochter";
     # Erzeugt eine Felderklärung
   text t_name1, tochter display name1;
     # Erzeugt ein Eingabefeld für Text
   value v_alter1, tochter; display alter1;
     # Erzeugt ein Eingabefeld für Zahlen

   frame sohn, daten; vertical; box; end;
     # Rahmendefinition für die Daten des Sohn
   label l_name2, sohn; display "Sohn";
     # Erzeugt eine Felderklärung
   text t_name2, sohn; display name2;
     #  Erzeugt ein Eingabefeld für Text
   value v_alter2, sohn; display alter2;
     # Erzeugt ein Eingabefeld für Zahlen

   frame ergebnis, gesamt; vertical; center_h; box; end;
     # Rahmendef. für Ausgabe der Ergebnisse

   button aktion, ergebnis;
     # Erzeugt einen Knopf zum Auslösen der Berechnungen
   display "rechnen und anzeigen";
   end;

   label l_doppelna, ergebnis;
   display doppelname;
     # Erzeugt die Ausgabeposition für den zu berechnenden Text
   label l_mittelwe, ergebnis;
   display mittelwert;
     # Erzeugt die Ausgabeposition für den zu berechnenden Mittelwert

   function aktion;
     # Definition der Funktion zum berechnen der Ausgaben
   get v_alter1, alter1;
   get v_alter2, alter2;
   get t_name1, name1;
   get t_name2, name2;
     # "" Wertübergaben an Variablen
   x = (alter1 + alter2) / 2;
     #  Berechnung des Mittelwert
   mittelwert = string(x,2);
     # Zahl in Textvaribale umwandeln
   put l_mittelwe, mittelwert;
     # Übergabe der Variable an die Ausgabe
   doppelname = name1 & "und" & name2;
     # Text aus den zwei Namen berechnen
   put l_doppelna, doppelname;
     # Übergabe der Variable an die Ausgabe
   end;
     # Ende der Funktion


Objekte, Grunddefinition

Anweisung - Bedeutung

   menu_item name;
      Beginn der Definition eines zusätzlichen Menüpunkts mit der
      Objektbezeichnung "name".

   button name {,parent};
      Beginn der Definition eines Schaltknopf mit der
      Objektbezeichnung "name".

   text name {,parent};
      Beginn der Definition eines Text-Eingabe und Ausgabefeld mit
      der Objektbezeichnung "name".

   label name {,parent};
      Beginn der Definition eines Textausgabefeld mit der
      Objektbezeichnung "name".

   value name {,parent};
      Beginn der Definition eines Zahleneingabe- und
      Zahlenausgabefeld mit der Objektbezeichnung "name".

   frame name {,parent};
      Beginn der Definition einer Arbeitsfläche (Rahmen) mit der
      Objektbezeichnung "name".

   file name;
      Beginn der Definition einer Datei mit der
      Objektbezeichnung "name".

   end;       Ende der Objektdefiniton.

Für die Objekte gibt es, je nach Art des Objekts, verschiedene ergänzende Parameter, in der Definition als "parent" bezeichnet. Diese werden gegebenenfalls nach dem Semikolon hinter der Objektdefiniton angefügt.


Objekte, erweiterte Funktionen

Anweisung ? Bedeutung

   invokes func name;
      Verändert die Bezeichnung eines Menüpunktes oder Button. Bei
      Klick auf den Menüpunkt oder den Button wird die aktuelle
      Bezeichnung an die globale Variable "invoker" übergeben,
      welche dann vom Programm nach Bedarf ausgewertet werden kann.

   display expr;
      Gibt einen Ausdruck, Text oder Zahl, an der Objektstelle aus.
      Für button, label oder text objekts.

   hidden;
      Initialisiert ein Objekt, die Anzeige des Objekts wird
      jedoch unterdrückt.

   position xnum, ynum;
      Legt die Ausgabeposition des Objekts fest, bezogen auf die
      linke obere Ecke des gültigen Ausgabebereichs, in Pixeln.

   char_size wnum, hnum;
      Bestimmt die Größe des Objekts in Zeichen

   pixel_size wnum, hnum;
      Bestimmt die Größe des Objekts in Pixeln.

   box;
      Erzeugt einen Rahmen und den Ausgabebereich.


Objekte

Zusatzanweisungen zum modifizieren der Lage von Objekten
Die Anordung von Objekten bezieht sich auf den aktuellen bzw. für
dieses Objekt gültigen Ausgabebereich.

   horizontal;
      Horizontale (von links nach rechts) Anordnung.

   vertical;
      Vertikale (von oben nach unten) Anordnung.

   top;
      Das Objekt wird oben angeordnet.

   bottom;
      Das Objekt wird unten angeordnet.

   hug_left;
      Das Objekt wird links angeordnet.

   hug_right;
      Das Objekt wird rechts angeordnet.

   center_h;
      Die Objekte werden in der Mitte senkrecht untereinander
      angeordnet.

   center_v;
      Die Objekte werden in der Mitte waagereccht untereinander
      angeordnet.

   warp num_expr;
      Die Objekte werden in Reihen angeordnet, wobei die Anzahl der
      Reihen oder Spalten übergeben wird.

 

   Produkt Info

     Name:              IZL v2.0
     lauffähig unter:   GW Ensemble v2.01
     Voraussetzung:     englische Sprache ...
     Preis:             50,- DM (GUC: 45 DM)
     Bestelladresse:    GUC Dorsten

 

ZOOM     ZOOM

Oben ein weiteres Beispiel für das neue IZL v2.0 - das nun auch Grafik-Funktionen bietet!


 




Dieser Artikel ist Bestandteil von:

Ausgabe 42

! - - - - - M I C R O F I L M - - - - - ! | Editorial | Jahreshaupttreffen, Produkt-Präsentationen, Programmierertreffen | GUC Clubsystem - notwendige Erweiterung | News Regio Hannover | News Regio Baden | Geoworks & GUC einmal aus einer anderen Sicht | News Regio Hamburg | '64net' ist da | CMD News | TopDesk 128 v3.0 | Fiedlers Utilities | Neue PD/SW-Programme für Geos | Digital-Talk | PD Disk für GWE2 | 256 Farben Video-Treiber | Kommerz in Deutschland | AOL in Deutschland | 256 Farben in GWE2 | Video Treiber Patch Programm | FLOPPY64 Update | Ergebnis Programm-Umfrage | Interessant: IZL v2.0 | IZL Kurs Teil #4 | Leserbrief: Drucker-Info | Ein weiterer Leserbrief ... | Neue Fonts! | GW Sammellizenz | FM Radio | Der neue Knopf im GeoManager | Verwirrspiel um Russen-DOS | Communication II | Bindery / Book Reader: Bibel für Geoworks | Bindery / Book Reader: Buch der Erkenntnis | Statistic mit Geoworks | 3DOBJ.BAS für '3D-Object' | DOS-Menü und Geoworks | Geos und Seidenmalerei | Neue Programme & Ankündigungen | GeoBox News | GeoWorks & Perry Rhodan | GEOS CD #2 | Spezialpapier


IZL - Kurs

IZL Kurs #1 - Installation | IZL Kurs Teil #2 | IZL Kurs Teil #3 | IZL Kurs Teil #4


Kurzlink hierhin: http://geos-printarchiv.de/2242


Letzte Änderung am 01.11.2019