Gambas: Druckversion: Einstieg

Aus Wikibooks

Nach einigen Jahren Entwicklungszeit ist Gambas die erste VB ähnliche Entwicklungsumgebung für Linux, die eine ausgereifte 2.0 Version bietet.

Die Basis dieses Buches bilden die Gambas Miniprogramme, die ich für meine ehemalige Website erstellt habe. Nachdem ich die Wikibooks entdeckt habe, entschied ich mich, sie auch hier zu veröffentlichen.

Diese Miniprogramme haben sich schon seit Visual Basic Zeiten sehr bewährt. Das Lernen der Programmiersprache wird so stark vereinfacht. Man hat auch ein einfaches Nachschlagewerk zur Hilfe. Jeder Interessierte sollte Gambas ohne großes Vorwissen einfach lernen können. Es ist natürlich allen gestattet, neue Kapitel einzufügen, bestehende zu verändern und verbessern. Auch ich kann noch viel in Gambas lernen und bin dankbar dafür!

Versuchen Sie für ein Problem immer die absolut einfachste Lösung und die didaktisch eingängigste anzugeben. Erst danach sollten etwas kompliziertere Lösungen als weitere Beispiele angegeben werden. Dies ist für Anfänger sehr hilfreich, da sie so den Kern einer Programmierlösung begreifen und nicht von unnötigem Ballast außen herum abgelenkt werden. Für erfahrene Programmierer steht dann vielleicht einiger banaler Code in dem Buch. Was dem einen banal erscheint, ist für andere der Einstieg, etwas wirklich zu verstehen.

Um dem angehenden Programmierer die Sprache Gambas schmackhaft zu machen, fängt dieses Buch gleich mit kleinen Anwendungsprogrammen an. Die kompliziertere Theorie kommt weiter hinten. Man braucht am Anfang ein paar sichtbare Erfolgserlebnisse und nicht ellenlange Theorieabhandlungen.

Um es dem Anfänger einfacher zu machen, werden die Namen der Steuerelemente und Klassen meistens bei den vorgegebenen Bezeichnungen belassen. Die Befehlstasten heißen dann also immer Button1 oder Button2, die Formulare Form1, Form2 etc.

Suchen Sie sich ein Anwendungsgebiet aus, das Ihnen zusagt, und fangen Sie in diesem an. Hoffentlich sind die ersten Beispiele einfach genug.

Das ganze Buch steht unter der GNU Free Documentation License und ist somit frei verfügbar und darf weiterverbreitet werden, solange die Lizenzbestimmungen eingehalten werden.

Ich wünsche allen denselben Spaß beim Lernen und eventuell auch Verbessern, den ich beim Schreiben hatte!

Rho im Okt 2004 (UTC)

Zum Schluss noch ein Zitat. Es ist nicht ganz ernst gemeint: Je dümmer der Programmierer, desto dicker die Programme. Autor Unbekannt.


Wikipedia hat einen Artikel zum Thema:


Was ist Gambas?[Bearbeiten]

Gambas ist eine Programmiersprache zur Softwareentwicklung.

Es bezeichnet eine visuelle Open Source Programmierumgebung (IDE) für Basic unter Linux. Sie macht die Vorteile von Visual Basic auch unter Linux KDE und Gnome verfügbar. Es gibt eine Windows Version, die im Gegensatz zu Visual Basic lizenzrechtlich frei ist.

Gambas wird von Benoît Minisini entwickelt, der in der Nähe von Paris wohnt und dafür sorgt, dass Gambas immer besser und ausgefeilter wird.

Die derzeitig aktuelle Version ist Gambas 3.14.1 ausgegeben am 29.10.2019. Stabile Versionen werden mit verschiedenen Linux Distribution ausgeliefert.

Mit Gambas kann man leicht

  • ein Programm mit grafischer Bedienoberfläche GUI entwickeln
  • auf Datenbanken wie MySQL oder PostgreSQL zugreifen
  • KDE Applikationen mit DCOP entwickeln
  • das eigene Programm in viele Sprachen übersetzen.
  • Visual Basic Programme unter Linux verfügbar machen.
  • Netzwerklösungen erstellen.

Gambas befindet sich in einer stabilen Entwicklungsphase. Die IDE-Oberfläche ist selber in Gambas-BASIC geschrieben.

Nach dieser Weltkarte zu schließen, wird es weltweit weiterentwickelt und genutzt.

Warum Gambas?[Bearbeiten]

Vielen Visual-Basic-Programmierern macht es Spaß, in Gambas zu programmieren.

Hat man die Microsoftwelt hinter sich gelassen und ist erfolgreich auf Linux umgestiegen, sucht man verzweifelt nach einer Programmiersprache, die ähnlich gut zu handhaben ist wie Visual Basic. Mit Gambas hat man eine gute Wahl getroffen, denn Gambas ist sehr stabil und komfortabel. Außerdem bügelt Gambas einige VB Ungereimtheiten aus und erzieht einen konsequent zur Objektorientierten Programmierung. Man lernt also noch dazu.

Zitate[Bearbeiten]

„This project aims at making a graphical development environment based on a Basic interpreter, so that we have a language like Visual Basic under Linux.“

„Still, this Qt-based software is one of the most advanced open source RAD tools available.

It is nearly complete and very usable and stable. Benoit's goal is to avoid the development failures of Microsoft Visual Basic. The modern concept of Gambas is available as a graphic at the Web site. Gambas is translated into many languages. To run Gambas applications you need the Gambas interpreter component installed on the user machine.“

Wie kann man Gambas lernen?[Bearbeiten]

Für alle, die mit Basic oder Visual Basic Programmiererfahrung gewonnen haben, ist der Umstieg auf Gambas ziemlich einfach.

Für die reine Programmierung kann man Bücher über Visual Basic zu Rate ziehen. Viele der Programme bekommt man auch unter Gambas in Gang.

Ein gutes Einsteiger-Buch ist wohl: VISUAL BASIC 6 FÜR DUMMIES. Klingt zwar etwas seltsam, ist aber ganz brauchbar. Es wird sicher sehr schnell ein Buch GAMBAS FÜR DUMMIES geben.

Oder Sie arbeiten dieses Wikibuch durch und helfen mit, es zu verbessern.

Einige Visual-Basic-Programmierkurse sind auch recht hilfreich. Siehe Links am Ende dieses Buches.



Gambas herunterladen[Bearbeiten]

Gambas kann man als gezippte Tarfiles herunterladen und selbst kompilieren wobei jedoch fertige Packages komfortabler zu handhaben sind.

Auf gambas.sourceforge.net findet man hierzu alles, was man benötigt.

Gambas Installation[Bearbeiten]

Am einfachsten bekommt man Gambas, wenn man es aus der eigenen Distribution installieren kann. So hat Suse ab 9.1. eine brauchbare Gambasversion schon dabei. Man muss Sie nur als root über Yast2 und Software ins aktuelle System holen.

Hat man keine fertige Gambasversion in der eigenen Linux Distribution dabei oder will man die eigene Version auf den neuesten Stand bringen, kann man Gambas auch aus dem Quellcode erzeugen. Das geht leichter als man denkt.

Die Gambas Installation ist auf dieser Seite genau beschrieben.

Im Folgenden habe ich die Compilation für die Version 1.0 ins Deutsche übersetzt:.

Ausführliche Beschreibung[Bearbeiten]

Vor der Compilation sollten Sie überprüfen, ob wichtige Komponenten auf ihrem System verfügbar sind:

  • Die X11 Entwicklerpackete.
  • Die Qt 3 Entwicklerpackete.
  • Die KDE 3 Entwicklerpackete (so Sie denn die KDE Komponenten ebenso verwenden möchten).
  • Die PostgreSQL, MySQL oder SQlite Endwicklerpakete (so Sie denn Datenbanktreiber kompilieren möchten).
  • Die libcurl development packages (version 7.10.7 oder neuer), wenn Sie die network-curl Komponente verwenden möchten.
  • Die SDL und SDL_mixer Entwicklerpackete (so Sie denn die SDL Komponenten verwenden möchten).
  • Die libxml und libxslt Entwicklerpackete (so Sie denn die XML Komponenten verwenden möchten).

Anschließend sollten Sie ins Internet gehen.

Sie müssen die folgenden development packages (Entwicklerpakete) installiert haben:

  • X11,
  • QT3,
  • KDE3,
  • PostgreSQL,
  • MySQL.

Download[Bearbeiten]

Wie man das macht, hängt von der Distribution ab.

Laden Sie den Gambas Quellcode herunter. Dazu können Sie im Konqueror die Downloaddatei von Gambas anklicken und in Ihr home-Verzeichnis kopieren, oder Sie starten von der Konsole Ihres Homeverzeichnisses den Befehl wget.

[linux@home ~]$ wget http://gambas.sourceforge.net/gambas-1.0.tar.bz2

Das Paket hat in etwa eine Größe von 4MB. Je nach der Art Ihrer Internetverbindung kann dies einige Zeit in Anspruch nehmen, bis es auf Ihrem Rechner geladen ist.

Entpacken[Bearbeiten]

Entpacken Sie das Paket am besten in home:
Hiermit wechseln Sie in Ihr home Verzeichnis:

 [linux@home ~] cd ~

Entpacken:

 [linux@home ~]$ bunzip2 gambas-1.0.tar.bz2

Gambas1.0 in ein neues Verzeichnis kopieren:

 [linux@home ~]$ tar xf gambas-1.0.tar
 [linux@home ~]$ ls
 ... gambas-1.0 ...

Gehen Sie jetzt in dieses neue Verzeichnis

 [linux@home ~]$ cd gambas-1.0

Kompilieren Sie nun Gambas:

Konfiguration überprüfen[Bearbeiten]

Mit configure wird Ihr System untersucht, um den Quellcode an Ihr System anzupassen. Es läuft dabei ein Scriptprogramm, welches in Ihrem Gambasverzeichnis steht. Deswegen geben Sie ./ vor dem Compile Befehl ein:

 [linux@home gambas-1.0]$ ./configure
 ...

Viele Meldungen spulen jetzt auf Ihrer Kommandozeile ab. Wenn etwas nicht funktioniert, gibt es Fehlermeldungen. Sie müssen dann zur Fehlerbeseitigung gehen.

Man kann Gambaskomponenten während der Compilation ausschließen, wenn man folgende Optionen wählt:

--disable-kde-component um die KDE Komponente abzuschalten --disable-db-component um die Datenbankkomponente abzuschalten

Und so weiter: geben Sie ./configure --help ein, um eine komplette Liste aller Optionen zu bekommen.

Beispiel:

 [linux@home gambas-1.0]$ ./configure --disable-db-component

Bedenken Sie auch, dass automatisch Komponenten abgeschaltet werden, wenn die entsprechenden Entwicklerpakete nicht auf Ihrem Rechner zu finden sind, es erscheint dann ein Warnhinweis in der Configure Output Anzeige.

Wenn die Konfiguration ohne Fehler durchläuft, dann können Sie die Kompilation mit make starten:

Kompilation mit make[Bearbeiten]

 [linux@home gambas-1.0]$ make
 ...

Die Kompilation braucht etwa 20 Minuten auf einem alten Pentium-II 400 MHz und mehr als 5 Minuten auf einem neuen Athlon XP 2000+. Deswegen sollte man Geduld bewahren. Sie können diese Zeit nutzen, um schon einmal ein wenig in der Dokumentation zu stöbern.

Falls ein Fehler während der Compilation auftritt, gibt es natürlich wieder eine Fehlermeldung. Da so ein Fehler ungewöhnlich ist, sollte er auf der Gambas Mailingliste gemeldet werden.

Installation als root make install[Bearbeiten]

Wenn das Kompilieren ohne Probleme beendet wurde, kann man Gambas fertig installieren. Um das zu tun, muss man Rootrechte haben. Deswegen nutzen Sie das Linuxkommando su mit ihrem Root-Passwort danach.

 [linux@home gambas-1.0]$ su -c "make install"
 Password:
 ...

Geben Sie Ihr Root-Passwort ein und die Installation wird gestartet. Normalerweise erfolgt die Installation in /opt/gambas. Wenn Sie ein anderes Installationsverzeichnis nutzen wollen, dann müssen Sie die configure-Option --prefix nutzen. Lesen Sie in der INSTALL-Datei im Verzeichnis der Quelldatei nach, um darüber noch mehr Einzelheiten zu erfahren.

Um Gambas z. B. in /usr zu installieren, müssen Sie folgendes eingeben:

 [linux@home gambas-1.0]$ ./configure --prefix=/usr

Beachten Sie, dass Gambas symbolische Links im /usr/bin Verzeichnis anlegt, so dass Sie die Gambas-Programme immer in Ihrem Pfad haben und sie so von der Entwicklungsumgebung leicht gefunden werden können.

Wenn Sie Gambas direkt in /usr installieren, werden diese symbolischen Links nicht erzeugt.

Wenn alles fertig ist, dann können Sie Ihre Gambas-GUI starten:

 [linux@home gambas-1.0]$ gambas


Aus der Erfahrung heraus ist es am leichtesten, eine Programmiersprache zu lernen, wenn man einfache Beispiele nachvollziehen kann.

Suchen Sie sich ein Gebiet aus, das Sie interessiert, sei es nun die Grafik, die Textbearbeitung oder die Datenbankanwendung. Wenn Sie in diesem Gebiet zu Programmieren anfangen, werden Sie am erfolgreichsten starten, denn Sie bringen ja schon einige Vorkenntnisse mit.

Für alle Mathematiker sind kleine Rechenprogramme der geeignete Anfang. Für einen Künstler sollte es ein kleines Malprogramm sein. Ein Internetfan braucht einen eigenen Browser, den er selbst programmieren kann. Zu all dem finden sich in Gambas gute Beispiele und Möglichkeiten.

Starten von Gambas[Bearbeiten]

Starten Sie Gambas nach der Installation mit Alt und F2 aus dem Direktbefehlsfenster. Geben Sie einfach gambas ein.

Danach erscheint folgender Begrüßungsbildschirm:

Der Begrüßungsbildschirm

Sie können Gambas auch über den KDE Menüknopf links unten starten. Dann gehen Sie zu Entwicklung und Entwicklungsumgebung. Wenn Sie Gambas z. B. als Suse-rpm-Datei installiert haben, erscheint dort Gambas als Eintrag.

Sie können Gambas auch auf Ihren Desktop legen. Klicken Sie in die freie Fläche ihres Desktops mit der rechten Maustaste. Dann wählen Sie Neu erstellen, Datei und Verknüpfung zu einem Programm herstellen. Bei den Eigenschaften müssen Sie einiges ergänzen.

So sieht ein Projekt unter Gambas aus:

Ein Projekt unter Gambas

Wenn Sie ein Gambas-Icon suchen, finden Sie dies hier:

Das Gambas-Icon

Bis jetzt ist noch kein Gambas-Icon in der Linux - KDE - Iconsammlung zu finden.

Hallo Welt![Bearbeiten]

Wie jede Einleitung zu einer Programmiersprache kommt diese auch nicht ohne Hallo Welt! aus.

Legen wir zunächst ein neues Projekt an:[Bearbeiten]

  • Starten Sie Gambas
  • Wählen Sie in dem erscheinenden Startfenster Neues Projekt
  • Es erscheint das Assistentenfenster, klicken Sie auf Nächster
  • Wählen Sie den Punkt Grafisches Projekt erstellen aus und klicken Sie wieder auf Nächster
  • Geben Sie dem Projekt den Namen Hallo_Welt – das Titel-Feld können Sie frei lassen – klicken Sie wieder auf Nächster
  • Wählen Sie nun ein Verzeichnis aus, in dem ihr Projekt abgespeichert werden soll. (Sie können jedoch auch die Voreinstellung lassen, da jedes Projekt in ein neues Unterverzeichnis kommt.)
  • Klicken Sie auf Nächster
  • Klicken Sie auf OK um den Assistenten zu beenden und mit der Entwicklung zu beginnen

Nun erstellen Sie ein neues Formular:[Bearbeiten]

  • Es öffnen sich drei Fenster
    • Das Projektfenster
    • Das Werkzeugfenster
    • Das Eigenschaftsfenster
  • In dem Fenster Projekte klicken Sie mit der rechten Maustaste auf Formulare und wählen Neu und dann Formular
    • Lassen Sie den Formularnamen wie vorgeschlagen bei Form1 und klicken Sie auf Nächster.
  • Jetzt öffnen sich weitere Fenster.
    • das Formular-Fenster, auf dem die Oberfläche erstellt wird
    • das Code-Fenster, in das der Programmcode eingegeben wird

Jetzt wird programmiert:[Bearbeiten]

  • Geben Sie ins Codefenster folgendes Programm ein:
PUBLIC SUB Form_Open()
  PRINT "Hallo Welt!"
END

Es geht los[Bearbeiten]

  • Drücken Sie die Taste F5 um das Programm zu kompilieren und es auszuführen
  • Nun sehen Sie ein Fenster in dem Hallo Welt! steht

Im Gegensatz zu VB erfolgt die Ausgabe des Print Befehls nicht in das Grafikformular sondern ins Direktfenster.

Wenn Sie das Direktfenster nicht sehen, müssen Sie das Formularfenster mit der Maus verschieben oder mit ALT und Tab dorthin wechseln.

Stoppen Sie das Programm durch einen Klick auf die rechte obere Ecke des Formfensters.

Versuchen Sie folgende Varianten, die ohne Direktfenster auskommen:

PUBLIC SUB Form_Open()
  ME.Caption = "Hallo Welt!"
END

Oder als Meldung:

PUBLIC SUB Form_Open()
  Message.Info("Hallo Welt!", "OK")
END

Beenden Sie Gambas mit Datei Beenden oder Strg + Q. Ihr Programm wird automatisch gespeichert.

Siehe auch: madeasy.de

Zweites Programm in Gambas[Bearbeiten]

Machen Sie alles wie beim ersten Programm. Aber vergeben Sie einen anderen Namen für das Projekt, z.B. kurz und bündig 2.

Erstellen Sie ein neues Formular wie im Abschnitt Erstes Programm beschrieben und nennen Sie es wie Sie wollen. Sie können auch die Voreinstellung Form1 stehen lassen.

Jetzt drücken Sie auf F6.

Die Werkzeugkiste erscheint.

Wählen Sie aus der Werkzeugkiste einen Befehlsbutton (Button OK) und eine Textbox (abc Feld) aus. Mit Doppelklick auf die Symbole werden diese auf das Formular kopiert.

Klicken Sie jetzt auf den Befehlsbutton und geben Sie folgenden Code ein:

PUBLIC SUB Button1_Click()
  Textbox1.Text = "Es geht"
END

Die obere und die untere Zeile stehen schon dort. Sie brauchen also nur die mittlere Zeile kopieren

 Textbox1.Text = "Es geht"

Dann drücken Sie F5.

Das Programm sollte starten.

Klicken Sie auf Ihren Befehlsbutton.

Der Text erscheint in der Textbox.

Stoppen Sie das Programm mit dem Kontrollkästchen X rechts oben am Formular.

Mit F6 können Sie die Eigenschaften ihrer drei Objekte noch ändern. Probieren Sie dazu etwas mit verschiedenen Eigenschaften herum.

Drittes Programm: Programme im Terminalfenster ohne Grafik[Bearbeiten]

Sie können Gambas auch für Programme ohne die grafische Oberfläche nutzen. Diese Programme laufen im Direktfenster (= Terminalfenster) auf der Konsole ab. Mit Visual Basic gibt es diese Möglichkeit nicht mehr.

Starten Sie Gambas wie gewohnt.

Wählen Sie Neues Projekt.

Folgen Sie dem Wizard und drücken Sie Nächster.

Bei Typ des Projektes auswählen wählen Sie Terminal-Projekt erzeugen.

Folgen Sie weiter dem Wizard und drücken Sie Nächster.

Geben Sie Ihrem Projekt einen Namen, z.B. 1mal1.

Folgen Sie dem Wizard und drücken Sie Nächster.

Wählen Sie das Verzeichnis, in dem ihr Projekt als Unterverzeichnis abgespeichert werden soll.

Folgen Sie dem Wizard und drücken Sie Nächster.

Die Daten Ihres Projektes werden zusammengefasst dargestellt.

Drücken Sie OK.

Jetzt erscheint das Projektfenster. Drücken Sie mit der rechten Maustaste auf das Verzeichnis Klassen.

Drücken Sie dann mit der linken Maustaste auf Neu und Klasse.

Lassen Sie den Namen bei Class1 als Startklasse und Drücken Sie OK.

Geben Sie als Beispiel folgendes Programm ein:

STATIC PUBLIC SUB Main()
DIM x AS Integer
DIM y AS Integer
FOR x = 1 TO 10
  FOR y = 1 TO 10
    PRINT x;" mal ";y; " = "; x*y 
  NEXT
NEXT
END
Ausgabe im Direktfenster

Drücken Sie F5 um es zu starten.

Schauen Sie sich im Direktfenster das Ergebnis an. Eventuell mit Alt - Tab zwischen den Fenstern hin- und herschalten.

Beenden Sie das Programm mit einem Klick auf das rote Quadrat im Projektfenster. Oder mit ALT - F4

Beenden Sie Gambas mit Datei Beenden oder mit Strg + Q oder programmieren Sie noch etwas weiter.

Frage: Wie kann man ein nicht-grafisches Programm als ausführbare Datei auf dem Desktop zugänglich machen ?


Wie kann man den Programmcode aus diesem Kurs kopieren?[Bearbeiten]

Hinweise zum Download der Programme aus dem Internet. So geht es:

  • Markieren sie den Code auf diesen Seiten mit der Maus.
  • Kopieren Sie ihn in die Zwischenablage mit Strg + C.
  • Starten Sie ihre Gambas Programmierumgebung.
  • Starten Sie ein neues Projekt.
  • Starten Sie mit einer neuen Form.
  • Holen Sie sich die notwendigen Steuerelemente und Befehlsfelder aus der Werkzeugleiste mit F6.
  • Benennen Sie die Steuerelemente so, wie sie auch im Code heißen. Mit F4 über die Eigenschaften.
  • Klicken Sie das wichtigste Befehlsfeld im Entwurfsmodus an.
  • Kopieren Sie den Code mit Strg + V in das Unterprogramm des Befehlsfeldes.
  • Starten Sie das Programm mit F5.

Ausführbare Datei erstellen[Bearbeiten]

Unter dem Menüeintrag PROJEKT wählen Sie Ausführbare Datei erstellen. Dies ist nur möglich, wenn das Programm auch korrekt funktioniert. Probieren Sie das vorher mit F5 aus.

Das Programm wird dann in dem Verzeichnis abgespeichert, in dem auch ihr Quelltext steht.

Mit Gambas2 Version 1.9.49 wird eine ausführbare Datei mit der Endung .gambas erzeugt. Diese Datei kann zum Beispiel mit dem Terminal und dem Befehl /home/xxx/gambas2/programm.gambas gestartet werden. xxx ist der Name des Home-Verzeichnisses. Es wird voraus gesetzt, dass das zu startende Programm im dem Verzeichnis /home/xxx/gambas2 abgelegt ist und der Name der ausführbaren Datei programm.gambas ist.


Bei der älteren Gambas Version 1.0.15 (die mit Ubuntu 7.04 installiert wird) ist es nicht ganz so einfach, das Programm zu starten. Nachstehend ist eine Lösung geschildert, die auch mit Ubuntu und Gnome und vermutlich auch mit dem KDE-Desktop klappt:

Unter Ubuntu 6.10 sowie 7.04 und mit Gnome habe ich beim Start eines Gambas-Programmes immer folgende Fehlermeldung:

 X Error: BadDevice, invalid or uninitialized input device 169
 Major opcode:  147
 Minor opcode:  3
 Resource id:  0x0
 Failed to open device
 X Error: BadDevice, invalid or uninitialized input device 169
 Major opcode:  147
 Minor opcode:  3
 Resource id:  0x0
 Failed to open device

Programme (eigene und auch Beispielprogramme) funktionieren unter der Gambas-Entwicklungsumgebung, trotz Fehlermeldung, einwandfrei. Auch der Gambas Befehl „alles kompilieren“ und „ausführbare Datei erstellen“ funktionieren ohne Fehlermeldung, dennoch ist es mir nie gelungen, die ausführbare Datei zu starten. Es gab verschiedene Fehlermeldungen beim Start des Programmes. Auch mit dem KDE-Desktop ( ich installierte das Mega-Paket Kubuntu-Desktop nach), stellte sich der Erfolg nicht ein.

Nach vielen Experimenten und per Zufall kam ich doch an das Ziel: Ich gab der ausführbaren Datei den Namen „irgendwas.exe“, wobei .exe der entscheidende Faktor ist. Mit einem Doppelklick auf die Datei in Nautilus startete das Programm außerhalb der Entwicklungsumgebung von Gambas. Das Ganze ist mir rätselhaft, ich dachte zunächst, das Wine eventuell zum Start benötigt wird. Dies ist nicht der Fall, da ich mit einem zweiten Rechner experimentierte, auf dem Wine nicht installiert ist.

Mit dem Hexeditor ghex habe ich die von Gambas erstellten ausführbaren Dateien „irgendwas“ und irgendwas.exe“ miteinander verglichen. Die Dateien sind tatsächlich etwas verschieden, „irgendwas“ ist um einige Bytes kürzer als „irgendwas.exe“

Das Programm auf dem Desktop platzieren[Bearbeiten]

Sie haben mit Gambas ein kleines Programm erstellt und ausführbar gespeichert. Jetzt wollen Sie es direkt vom KDE Desktop starten.

  • Klicken Sie dazu mit der rechten Maus an einer leeren Stelle auf die KDE Oberfläche.
  • Wählen Sie dann den Menüpunkt Neu erstellen, Datei und Verknüpfen mit Programm ...
  • Im folgenden Eigenschaften-Menü wählen Sie den Punkt Allgemein und geben der Verknüpfung einen Namen.
  • Dann wählen Sie den Punkt Programme und in der Zeile Befehl drücken Sie die Taste Auswählen.
  • Suchen Sie das richtige Verzeichnis in dem ihre ausführbare Datei steht, z.B. home/name/gambas99/program1
  • Wählen Sie das richtige Programm aus diesem Verzeichnis und bestätigen Sie Ihre Eingaben mit OK.

Jetzt wird ihr Programm auf dem Desktop erscheinen und zwar mit einem blauen Zahnrad als Symbol (= Icon).

Siehe dazu auch: [1]

Um unter KDE ein nicht grafisches Programm als ausführbare Datei auf dem Desktop zugänglich machen, müssen Sie nach dem Auswählen des Programms unten rechts auf den Button Erweiterte Optionen ... klicken und dort In Terminal starten anwählen.

Dem Programm ein eigenes Icon (Programmsymbol) verpassen[Bearbeiten]

Icons sind Bitmapdateien mit maximal 64*64 Bildpunkten. Gut geeignet zur Erstellung eines Icons ist das Programm KIconEdit in einer neueren Version. Haben Sie ihr Programmsymbol gemalt, dann speichern Sie es am besten im selben Verzeichnis wie die ausführbare Datei ab. Dann müssen Sie noch die Desktopdatei mit dem neuen Icon verknüpfen. Dazu klicken Sie mit der rechten Maustaste auf das blaue Zahnrad ihres Programmes und wählen Sie den untersten Punkt Eigenschaften. Klicken Sie auf das blaue Zahnrad und suchen Sie sich ihren eigenen Icon unter Sonstige Symbole und Auswählen.

Siehe dazu auch: [2]



Programmstart[Bearbeiten]

Ein fertiges Programm kann man auf verschiedene Arten starten:

  1. Aus der Programmierumgebung GUI mit F5
  2. Aus der Programmierumgebung GUI über die Menüleiste
  3. Vom Desktop her mit Klick auf das Programm, wenn man es kompiliert hat und im Desktop gespeichert hat.
  4. Mit Alt + F2 und Eingabe des Programmnamens, wenn man es kompiliert hat .

Spezielle Startmöglichkeiten:

  • Bei Klick auf einen Befehlsbutton.
    • Diese Version ist für den Anfänger am einfachsten zu verstehen.
  • Mit Form_Open()
    • Automatischer Programmstart mit dem Laden einer Form
  • Bei Doppelklick auf die Form (Event = DoppelClick)
  • Beim Berühren der Form mit der Maus (Event = Enter)

Besonderheiten[Bearbeiten]

Ein Programm starten und sofort wieder beenden[Bearbeiten]

Ob das Sinn macht sei dahingestellt. Wie es geht, zeigt folgendes Beispiel. Sie brauchen nur eine leere Form, um es in Gang zu bringen.

PUBLIC SUB Form_Open()
DIM a AS String[]
DIM x AS Integer
a = NEW String[]
FOR x = 0 TO 4
  a.Add(Str(x))
NEXT
a[0] = "Anna"
a[1] = "Anton"
a[2] = "Toni"
a[3] = "Max"
a[4] = "Klaus"
FOR x = 0 TO 4
  PRINT a[x]
NEXT
ME.Close 
END

Mit

PUBLIC SUB Form_Open()

wird das Programm direkt gestartet.

Mit

ME.Close 

in der vorletzten Zeile wird es gleich wieder beendet.

Frage dazu: Wie kann man das Direktausgabefenster programmtechnisch verkleinern?

Programmstart mit Argumentenübergabe[Bearbeiten]

Noch zu bearbeiten

zweiten Programmstart verhindern[Bearbeiten]

Noch zu bearbeiten

Programmende[Bearbeiten]

  • Mit dem Schließen-Button, normalerweise ein Kreuz in der rechten oberen Fensterecke
  • Ende mit ME.Close nicht mit END wie in VB!
PUBLIC SUB Button1_Click()
  ME.Close 
END

Programmende mit ME.Close[Bearbeiten]

In VB konnte man ein Programm mit dem Befehl END beenden. Das funktioniert in Gambas nicht. Auch der Befehl Quit produziert Fehlermeldungen. Nutzen Sie deswegen den Befehl ME.Close.

Das Beispielprogramm hat nur einen Befehlsbutton.

Starten Sie ein neues Projekt, holen Sie sich eine neue Form.

Holen Sie sich aus der Werkzeugkiste = Toolbox einen Befehlsbutton.

Drückt man auf den Button, soll das Programm sofort wieder beendet werden.

So schaut das Ganze aus:

Hinter dem Button1 und hinter der Form steht folgender Code:

PUBLIC SUB Button1_Click()
  ME.Close
END

Ende mit der ESC Taste[Bearbeiten]

PUBLIC SUB Form_KeyPress()
  IF Key.Code = Key["Esc"] THEN ME.Close
END

oder einfach in den Eigenschaften des Buttons für das Beenden die Eigenschaft Cancel auf True stellen. Dadurch wird beim Drücken der ESC-Taste das selbe bewirkt, als würde man den Button mit der Maus anklicken

Probleme[Bearbeiten]

  • Mit dem Befehl STOP gibt es Ärger.
  • Mit dem Befehl Quit gibt es öfter Ärger.
  • Mit Window.Close (ist nicht static).
  • Mit der Tastenkombination ALT + F4 kann man Fenster schließen.
  • Ende und vorher Datenbank schließen

Programm abwürgen[Bearbeiten]

  • Das Programm beenden mit dem Klick auf den roten Punkt in der GUI
  • Das Programm beenden mit dem Klick auf das X rechts oben am Bildschirm
  • Ende mit ME.Close
  • Programm abwürgen mit Alt + F4
  • Programm abwürgen: Mit Strg + ESC, dann kpm aufrufen.
  • Mit Alt + F2 die Direkteingabe starten, dann kpm starten (kpm + Return)
    • Man erhält eine Aufstellung aller laufenden Prozesse
    • Den fehlerhaften Prozess markiert man und drückt unten die Taste kill = beenden.
  • Oder noch einfacher: Ein Konsolenfenster öffnen, killall gambas eingeben.
  • Andere Möglichkeit:
    • Ein Konsolenfenster öffnen, ps -d | grep gambas eingeben und Prozessnummer merken.
    • Nun folgt der Befehl kill -9 PROZESSNUMMER. Damit wird das komplette Gambas abgeschossen.
    • Möchte man nur einen bestimmten Prozess (Dialog etc) abschießen, sucht man sich mit: ps -ef | grep gambas den richtigen Prozess heraus und tötet ihn wie oben beschrieben. Diese Varianten des Abschießens überlebt kein Prozess. Daher ist ein Reboot des Systems unnötig!
  • Programm abwürgen mit Strg + Pause oder Strg + C funktioniert in Gambas nicht.
  • Programm abwürgen mit Strg + Alt + Entf funktioniert in Gambas nicht.