20.11.1 Projekt Application

Das vorgestellte Projekt demonstriert den Einsatz der Klasse Application (gb) und verwendet fast alle Eigenschaften – bis auf Application.Daemon und die beiden Spezial-Event-Handler – in unterschiedlichen Zusammenhängen.

GUI

Abbildung 20.11.1.1: GUI für das Demonstrationsprogramm 'DApplication'

Keine Überraschungen birgt der Quelltext, in dem relevante Abschnitte rot hervorgehoben sind:

[1] ' Gambas class file
[2] 
[3] Public Sub Form_Open()
[4]   FMain.Center
[5]   FMain.Resizable = False 
[6]   FMain.Title = "Einsatz der Klasse Application (gb)"
[7]   Application.Priority = 10  
[8] End ' Form_Open()
[9] 
[10] Public Sub btnShowInformationsApplication_Click()
[11]   Dim vValue As Variant
[12]   Dim cInformations As New Collection
[13]   
[14]   cInformations["PID = "] = Application.Id
[15]   cInformations["Start-Klasse = "] = Application.Startup.Name
[16]   cInformations["Titel = "] = Application.Title
[17]   cInformations["Projekt-Pfad = "] = Application.Path
[18]   cInformations["Verzeichnis = "] = Application.Dir
[19]   cInformations["Version = "] = Application.Version
[20]   cInformations["Priorität [-20 (max) ... +19 (min)]  = "] = Application.Priority
[21]   cInformations["Argumente (Anzahl) = "] = Application.Args.Count
[22]   
[23]   txaOutput.Clear
[24]   txaOutput.Insert(gb.NewLine)
[25] ' Ausgabe Informationen
[26]   For Each vValue In cInformations
[27]     txaOutput.Insert(cInformations.Key & cInformations[cInformations.Key] & gb.NewLine)
[28]   Next ' vValue
[29] 
[30] End ' btnShowInformationsApplication_Click()
[31] 
[32] Public Sub btnShowInformationsEnviroment_Click()
[33]   Dim vEnvName As Variant
[34]   Dim i As Integer = 1
[35]   
[36]   txaOutput.Clear
[37]   txaOutput.Insert(gb.NewLine)
[38] ' Ausgabe Umgebungsvariablen
[39]   txaOutput.Insert("Es existieren " & Application.Env.Count & " Umgebungsvariablen.")
[40]   txaOutput.Insert(gb.NewLine & gb.NewLine)
[41]   For Each vEnvName In Application.Env 
[42]     txaOutput.Insert(Str(i) & ": " & vEnvName & " = " & Application.Env[vEnvName] & gb.NewLine)
[43]     Inc i
[44]   Next ' vEnvName
[45]   
[46] End ' btnShowInformationsEnviroment_Click()
[47] 
[48] Public Sub btnEnvRead_Click()
[49]   Dim sCurrentDesktop As String
[50]   
[51]   txaOutput.Clear
[52]   txaOutput.Insert(gb.NewLine)
[53]   sCurrentDesktop = Application.Env["XDG_CURRENT_DESKTOP"]
[54]   txaOutput.Insert("sCurrentDesktop = Application.Env[\"XDG_CURRENT_DESKTOP\"]")
[55]   txaOutput.Insert(gb.NewLine & gb.NewLine)
[56]   txaOutput.Insert("Aktueller Desktop: " & sCurrentDesktop)
[57] 
[58] End ' btnEnvRead_Click()
[59] 
[60] Public Sub btnEnvWrite_Click()
[61] 
[62]   Application.Env["GB_JIT"] = "y"
[63]   
[64]   txaOutput.Clear
[65]   txaOutput.Insert(gb.NewLine)
[66]   txaOutput.Insert("Die Umgebungsvariable \"GB_JIT\" wurde mit ")
[67]   txaOutput.Insert("Application.Env[\"GB_JIT\"] = \"y\"" & " auf den Wert '")
[68]   txaOutput.Insert(Application.Env["GB_JIT"] & "' gesetzt!")
[69] 
[70] End ' btnEnvWrite_Click()

Wenn Sie die Umgebungsvariable GB_JIT gesetzt haben (Button rechts unten) und sich dann erneut die Übersicht der Umgebungsvariablen ausgeben lassen, so finden Sie als letzten Eintrag in der Liste zum Beispiel: 40: GB_JIT = y.

Download