WxBasic

WxBasic

wxBasic ist eine Open source-Implementierung eines BASIC-Interpreters von David Cuny. Die damit erzeugten Programme laufen unter Windows und Linux. Der Interpreter ist im Betastadium. Man kann damit einzelne ausführbare Dateien erzeugen, die keine anderen Dateien zur Ausführung benötigen außer einer Laufzeitumgebung von wxBasic.

wxBasic ist in C geschrieben mit einer C++-Schicht um die wxWidgets-GUI-Bibliothek hinzuzubinden. wxBasic benutzt einen Bytecode, wie Perl, Java oder VB.net. Für die Auslieferung ist neben dem Programmtext lediglich die Weitergabe einer Runtime-EXE-Datei nötig, die kleiner als 1MB ist.

Ausführliches Beispiel

Anstelle detaillierter Angaben zu Syntax und GUI-Befehlsaufrufen mag ein ausführliches Beispiel illustrieren, wie lesbar der Code ist, der in wxBasic geschrieben worden ist. Es handelt sich um eine kleine Applikation, die dem Benutzer anbietet, über das Datei-Menu eine Datei zu öffnen. Der Text dieser Datei wird dann in einem Fenster dargestellt. Gezeigt wird also, wie ein Menu aufgebaut wird und wie die Menuanwahl mit Subroutinen verknüpft wird. Die Menuanwahl wird in der Statuszeile jeweils mit einem Hilfetext erläutert. Das Programm ist komplett und damit funktionsfähig.

' übernommen von http://wxbasic.sourceforge.net/phpBB2/viewtopic.php?t=554
' Simple Text Viewer in wxBasic
dim AppName = "Text Viewer"
fileName = "" 
 
' Hauptfenster; ein Frame ist ein Fenster.
dim frame = new wxFrame( Nothing, -1, AppName & " - Ohne Titel" )
' Text edit control
dim control = new wxTextCtrl( frame, -1, "", wxPoint( 0, 0 ),
wxSize( 100, 100 ), wxTE_MULTILINE | wxTE_READONLY | wxTE_RICH)
 
' Status bar - The one at the bottom of the window
dim status = frame.CreateStatusBar( 1 )
frame.SetStatusText("Bereit")
 
' Dialog used for Open
dim fileDialog = new wxFileDialog( frame )
 
' Menuleiste zum Frame (=Fenster) hinzufügen
dim mBar = new wxMenuBar()
frame.SetMenuBar(mBar)
 
' 'Datei'-Menu erzeugen
dim mFile = new wxMenu()
mBar.Append(mFile, "&Datei")  
' Eintrag hinzufügen
mFile.Append( wxID_OPEN, "&Oeffnen...", "Eine bestehende Datei laden..." )
 
mFile.AppendSeparator()
mFile.Append( wxID_EXIT, "B&eenden\tAlt-X", "Anwendung beenden" )
 
 
 
Sub onFileOpen( event )
   fileDialog.SetMessage("Datei öffnen")
   fileDialog.SetStyle( wxOPEN )
   If fileDialog.ShowModal() = wxID_OK Then
     fileName = fileDialog.GetPath()
     Ext = fileDialog.GetFilename()
     control.Clear()
     control.LoadFile( fileName )
     frame.SetTitle( AppName & " - " & fileName )
     frame.SetStatusText(Ext)
  End If
End Sub
 
Connect( frame, wxID_OPEN, wxEVT_COMMAND_MENU_SELECTED, "onFileOpen" )
 
 
Sub onFileExit( event )
  frame.Close(True)
End Sub
 
Connect( frame, wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, "onFileExit" )
 
' Hilfemenü erzeugen
dim mHelp = new wxMenu()
mBar.Append(mHelp, "&Hilfe")
mHelp.Append( wxID_HELP, "&Über\tF1", "Über dieses Program" )
 
Sub onHelpAbout( event )
  Dim msg = "Text View zeigt eine Text-Datei an \n" &
  "unabhängig davon welche Dateiendung sie aufweist.\n" &
  "Falls es sich nicht um eine Textdatei handelt," &
  "dann wird die Datei nicht angezeigt."
  wxMessageBox( msg, "Über Text View", wxOK + wxICON_INFORMATION, frame )
End Sub
Connect( frame, wxID_HELP, wxEVT_COMMAND_MENU_SELECTED, "onHelpAbout" )
 
frame.Show(True)

Siehe auch

  • sdlBasic

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • WxBasic — est un logiciel libre / open source, multi plateformes interpréteur BASIC reposant sur wxWidgets[1]. Il permet de créer dans une variant de Basic des programmes à interface graphique portables sur Windows et Linux et est distribué selon les… …   Wikipédia en Français

  • wxBasic — est un logiciel libre / open source, multi plateformes interpréteur BASIC reposant sur wxWidgets[1]. Il permet de créer, dans une variante de Basic, des programmes à interface graphique portables sur Windows et Linux et est distribué selon les… …   Wikipédia en Français

  • WxBasic — Infobox Software name = wxBasic caption = collapsible = author = developer = released = latest release version = 0.52 latest release date = March 22, 2002 latest preview version = latest preview date = frequently updated = programming language =… …   Wikipedia

  • Basicdialekt — Aufgrund der seit Jahrzehnten bestehenden Popularität von BASIC existieren zahlreiche BASIC Implementierungen auf einer Vielzahl von Plattformen. Entsprechend den sehr unterschiedlichen Umgebungen und Einsatzzwecken wurde eine hohe Zahl von… …   Deutsch Wikipedia

  • Basicdialekte — Aufgrund der seit Jahrzehnten bestehenden Popularität von BASIC existieren zahlreiche BASIC Implementierungen auf einer Vielzahl von Plattformen. Entsprechend den sehr unterschiedlichen Umgebungen und Einsatzzwecken wurde eine hohe Zahl von… …   Deutsch Wikipedia

  • List of BASIC dialects by platform — List of BASIC dialects by platform: This is a list of dialects of the BASIC computer programming language, sorted into groups for better conceptual organization.There is also an alphabetical list of BASIC dialects. These two lists should contain… …   Wikipedia

  • List of BASIC dialects — This article gives an alphabetical list of BASIC dialects mdash;a flat list of interpreted and compiled variants of the BASIC programming language. The dialects platform(s) (that is, the computer models and operating systems) are given in… …   Wikipedia

  • SdlBasic — is a multiplatform interpreter for BASIC, using the SDL libraries. Its interpreter core is based on wxBasic. The interpreter can be very useful for people who are familiar with ANSI BASIC interpreters and are curious or needing SDL library… …   Wikipedia

  • Liste der BASIC-Dialekte — Aufgrund der seit Jahrzehnten bestehenden Popularität der Computer Programmiersprache BASIC existieren zahlreiche BASIC Implementierungen auf einer Vielzahl von Plattformen. Entsprechend den sehr unterschiedlichen Umgebungen und Einsatzzwecken… …   Deutsch Wikipedia

  • SdlBasic — ist ein Open Source BASIC Dialekt, der von einem italienischen Programmierer betreut wird. Von wxBasic wurde der Interpreter übernommen, aber statt der wxWidgets Bibliothek die plattformunabhängige Simple DirectMedia Layer Bibliothek eingebunden …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”