Benutzer-Werkzeuge

Webseiten-Werkzeuge


k17:k17.7:k17.7.3:start

17.7.3 Projekt 1 – Direkte Anzeige von Daten in der GridView

Im ersten vorgestellten Projekt ist die Anzahl der Spalten in der GridView bekannt, konstant und beträgt 5. Die per Zufall generierten Daten (Datentypen: String, Float, Date und Boolean) werden ohne Zwischenspeicherung sofort zeilenweise – Spalte für Spalte – in die Gitterzellen eingefügt und in der Gitteransicht angezeigt. Nachdem alle Daten eingetragen worden sind, was auch bei den wenigen Daten eine gewisse Zeit benötigt, wechselt die Anzeige nach einer Sekunde in die 1. Datenzeile. Hier finden Sie den (fast) vollständigen Quelltext:

[1]' Gambas class file
[2]
[3]PUBLIC SUB Form_Open()
[4]  FMain.Center
[5]  FMain.Border = 1  
[6]  SetGridProperty()
[7]  GridView1.Rows.Count = 0 ' Es wird KEIN Daten-Gitter angezeigt
[8]END ' Form_Open()
[9]
[10]PRIVATE SUB SetGridProperty()
[11]  GridView1.Header = GridView1.Horizontal ' Kopfzeile wird angezeigt
[12]  GridView1.Mode = Select.Single ' Die selektierte Zeile wird farbig markiert
[13]  GridView1.Columns.Count = 5 ' Anzahl der Spalten
[14]  GridView1.Columns[0].Resizable = FALSE ' Die erste Spalte-Breite ist fix
[15]  GridView1.Columns[0].Width = 40
[16]  GridView1.Columns[0].Title = "N"  
[17]  GridView1.Columns[1].Width = 90
[18]  GridView1.Columns[1].Title = "Zahl"
[19]  GridView1.Columns[2].Width = 110
[20]  GridView1.Columns[2].Title = "Wahrheitswert"
[21]  GridView1.Columns[3].Width = 110
[22]  ...
[23]END ' SetGridProperty()
[24]
[25]PRIVATE SUB GenerateAndDisplayGridValues()
[26]  DIM iCount AS Integer  
[27]  DIM aNames AS String[] = ["Hans", "Maria", "Peter", "Anna", "Robert", "Stefan", "Emma", "Yvonne"]
[28]  
[29]  FMain.Mouse = Mouse.Wait
[30]  FOR iCount = 1 TO 200 ' Datensätze mit Zufallsdaten
[31]      INC GridView1.Rows.Count ' Anzeige der bereits generierten Datensätze/Zeilen in der GridView
[32]      GridView1.MoveTo(GridView1.Rows.Count - 1, 0) ' Optional
[33]      GridView1[iCount - 1, 0].Text = Str(GridView1.Rows.Count)
[34]      GridView1[iCount - 1, 1].Text = Str(Round(Rnd(-100, 100), -3))
[35]      GridView1[iCount - 1, 2].Text = Str(CBool(Round(Rnd()))) 
[36]      GridView1[iCount - 1, 3].Text = aNames[CInt(Rnd(0, aNames.Count))]
[37]      GridView1[iCount - 1, 4].Text = Format$(Date(Rnd(0, 2200) + CFloat(Now())), "dd.mm.yyyy")
[38]  NEXT ' iCount  
[39]  FMain.Mouse = Mouse.Default
[40]END ' CreateGridValues()
[41]
[42]PUBLIC SUB btnGridViewShow_Click()  
[43]  GridView1.SetFocus
[44]  GridView1.Clear
[45]  GridView1.Rows.Count = 0
[46]  GenerateAndDisplayGridValues()
[47]  WAIT 1
[48]  GridView1.MoveTo(0, 0) ' Sprung in die Daten-Zelle[0,0]
[49]END ' GridViewShow_Click()
[50]
[51]PUBLIC SUB btnClose_Click()
[52]  FMain.Close
[53]END ' Close

AnzeigeDirekt

Abbildung 17.7.3.1: Direkte Anzeige von Daten in der GridView – ohne Zwischenspeicherung

Die Gittereigenschaften können bereits zum Programmstart mit SetGridProperty (Zeilen 33 bis 37) gesetzt werden, da sich diese zur Laufzeit nicht verändern. Wenn die Zeilenzahl der GridView größer als Null ist, dann werden die mit den Daten gefüllten Zellen sichtbar (Zeile 31).

Probieren Sie auch in der Zeile 30 andere Werte für die Anzahl der zu erzeugenden Zeilen in der Gitteransicht aus und vergleichen Sie die Zeiten, bis das Daten-Gitter mit dieser Methode der Sofortanzeige vollständig gefüllt ist.

Für die Navigation in der GridView haben Sie mindestens diese Möglichkeiten:

  • Pos1-Taste → 1. Zeile (sichtbare) Zeile im Anzeigebereich
  • Ende-Taste → letzte (sichtbare) Zeile im Anzeigebereich
  • Bild-nach-unten-Taste → absolut letzte Zeile in der GridView
  • Bild-nach-oben-Taste → erste Zeile in der GridView
  • Nach-oben-Taste → je eine Zeile nach oben
  • Nach-unten-Taste → je eine Zeile nach unten
  • Maus-Rad → Scrollen nach oben und unten

17.7.3 Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k17/k17.7/k17.7.3/start.txt · Zuletzt geändert: 06.01.2018 (Externe Bearbeitung)

Seiten-Werkzeuge