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

Index
Register
Login

Die Anzeige des Archivs erfolgt grafisch. Ändern

NewBasic 1.0 Beta 3

Autor: Dirk Haase

Einige habe es sicher schon gehört oder gelesen, für NewDeal Office 3.0 wird es eine visuelle Programmiersprache geben, mit der man direkt programmieren kann, ohne NewDeal Office verlassen zu müssen. Es gab zwar IZL, aber eine neue Version davon wird nicht für GEOS / NDO erschienen sondern nur für Win 95/NT. NewBasic ist gegenüber IZL wesentlich umfangreicher, was schon die fast 200 Seiten Dokumentation beweisen.

Aber nicht alles ist einfacher geworden. Zwar kann man recht schnell seine Programmoberfläche zusammenklicken, aber dann beginnt die eigentliche Arbeit - die Programmierung der Funktionen. Und das ist bei dem riesigen Funktionsumfang nicht immer einfach. In der englischen Dokumentation, welche derzeit nur als PDF-Datei erhältlich ist, sind noch einige Fehler enthalten und auch Beispielprogramme, die so nicht funktionieren. Aber es gibt inzwischen Abhilfe, eine komplett ins deutsche übersetzte Fassung für NewWrite.

Da alles in einem Paket enthalten ist, kann man sozusagen gleich loslegen. Wie in der mittlerweile dritten Betaversion zu sehen, wird man seine Programme später direkt compilieren können, so das man sie direkt per Doppelklick wie ein normales Programm starten kann. NewBasic ist eine ereignis-orientierte Programmiersprache; das heißt, wenn der Anwender eine Aktion durchführt, zum Beispiel auf eine Taste klickt, dann wird etwas gemacht. Im folgenden ein paar Einblicke in die derzeit aktuelle Betaversion.

Nach dem Start des NewBasic Builder öffnen sich auf dem Bildschirm drei Fenster: oben der NewBasic Builder mit der Dokumentkontrolle und verschiedenen Tasten zum späteren testen der Programme. Am linken Rand des Bildschirms findet man die sogenannte Toolbox. In ihr findet man die verschiedenen Komponenten, geordnet nach Bereichen: in den Grundelementen (Basic UI) findet man Tasten, Eingabefelder, Listen, Menüs, Rollbalken. Bei den "Einfachen" (Primitive) das Gadget oder den Spacer (Platzhalter), weiter geht's mit den "Deluxe"-Komponenten Text (mehrzeiliges Texteingabefeld) und Table (Tabelle), danach kommt der "Service"-Bereich mit TimeDate (Zeit & Datum), Alarm, Timer ? und am Schluß "Window" mit den beiden Typen Dialog und Form. Die Komponenten sollen jetzt nicht näher erklärt werden, wen es interessiert, der kann sich die aktuelle Beta-Version vom NewDeal WWW-Server laden, im Bereich "Preview". (http://www. newdealinc.com).

Über den Menüpunkt Window / Editor ? oder durch einen Doppelklick auf eine Komponente öffnet sich der Editor, in dem der Code eingegeben und editiert wird. Über den Menüpunkt Window / Component Properties öffnet sich das gleichnamige Fenster, welches die jeweiligen Eigenschaften (Höhe, Breite...) einer Komponente anzeigt.

Beispiel 1ZOOM     Beispiel 2ZOOM     Beispiel 3ZOOM    

Dieses Fenster ist meistens in drei Bereiche aufgeteilt: General für die allgemeinen Einstellungen, Children für Einstellungen, die Children-Komponenten betreffen und Specific für spezielle Einstellungen. Im Beispiel für eine Form würde es so aussehen: im General-Bereich findet man die Eigenschaften für die Sichtbarkeit und ob die Form aktiv ist, weiterhin deren Namen und die Beschriftung. Die Plazierung kann entweder über die Punkte 'Left' und 'Top', durch direkte Eingabe der Werte oder durch Plazierung mit der Maus eingestellt werden. Ebenso die Breite und Höhe. Diese Eigenschaften lassen sich auch "indirekt" vorgeben, so das sie von anderen Einstellungen abhängig sind, "As needed" zum Beispiel bringt das Objekt immer auf die Größe, die es braucht, um selbst oder mit seinem Inhalt komplett dargestellt zu werden. Im Children Bereich kann man die Ausrichtung der Objekte, die später innerhalb der Form plaziert werden, festlegen. Am einfachsten ist es, wenn 'Auto Layout' aktiviert ist. Danach kann eingestellt werden, wie die Children zueinander angeordnet werden (Vertikal oder Horizontal), ob sie zentriert werden sollen und welchen Abstand sie zueinander haben. Im 'Specific'-Bereich kann zum Beispiel die zur Anwendung gehörende Hilfedatei und deren Startseite angegeben werden. Eine sehr gute Möglichkeit, um Hilfe dann zu geben, wenn es notwendig ist.

Zum Schluß noch ein kleines Beispiel, wie einfach das ganze teilweise ist. Es soll am Ende ein kleines Programm werden, welches zwei Zahlen addiert und das Ergebnis darstellt. Zuerst wird die 'Auto Layout'-Eigenschaft für die Form ausgeschaltet, um alle Komponenten frei plazieren zu können - damit läßt sich das Beispiel einfacher umsetzten. Nun plaziert man zwei Number-Komponenten, einen Button um die Berechnung auszulösen und zwei Label - eins um das "+" darzustellen und eins um das Ergebnis auszugeben. Die Taste wird in der Eigenschaftsbox mit "Berechnen !" beschriftet und schon ist die Oberfläche fertig.

Nun geht es an den Programmcode. Mit einem Doppelklick auf die Form öffnet man den Editor. Aus der 'Components:'-Liste wählt man 'button1' in der sich links daneben befindenden 'Events:'-Liste 'pressed'.
Im eigentlichen Editorfenster wird dadurch schon eine neue Routine mit dem Namen 'button1_pressed(self as button)' angezeigt. Als nächstes wird die Berechnungsformel geschrieben. Diese ist recht kurz, da man auf die benötigten Werte direkt zugreifen kann und nicht erst die Variablen definieren muß.

Der Zugriff auf die Beschriftung von Label2 erfolgt über "label2.caption=", auf die Werte aus den Number-Objekten über "number1.value". Und die Umwandlung vom Zahlenformat der Berechnung in das Text-Ausgabeformat geschieht über die "str()"-Funktion.

Nachdem das Programm mit der "Run"-Taste gestartet wurde, können mit der Maus die beiden Werte (x und y) geändert werden, mit einem Klick auf die "Berechnen !"-Taste wird das Ergebnis berechnet und ausgegeben:

Wie man sieht, es ist gar nicht so schwer. Man kann natürlich auch aufwendigere Sachen mit NewBasic machen: Widerstandsberechnung über dessen Farbcode, das ein oder andere Spiel, eine Uhr, Feiertagsberechnung usw. ...

Dies war zwar nur ein kleiner Eindruck von NewBasic, aber vielleicht hat dieser Beitrag bei dem ein oder anderen die Lust geweckt, mal selber wieder etwas zu programmieren. Beispiele finden sich sowohl auf den NewDeal Web Seiten, beim GUC (http://www.geosuserclub.com) und auf meinen Seiten.
(http://members.aol.com/georabbit)

 

Dirk Haase

 

 

 




Dieser Artikel ist Bestandteil von:

Ausgabe 58

! - - - - - M I C R O F I L M - - - - - ! | Editorial | Bericht von der Hobbytronik | Zeitplan JHT ´98 | News Regio Baden | Neues aus der Geos Welt | Geos 64 / 128 und das Jahr 2000 | Hardware Test: TV Tuner von Conrad | Hardware Test: PC Tastatur Interface | Leserbrief | Fremdsprachen und (N)LQ - (CustomPrint v1.1) | Aktuelles ... im Juni | 2.x Utility Pack - Verwirrung ohne Ende | Problemlösungen für Geoworks Ensemble und NewDeal Office, | Mehrfachkonfiguration unter Win 95 für Geos / NewDOS | NewBasic 1.0 Beta 3 | Basel 1998


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


Letzte Änderung am 01.11.2019