TableLib 1.5.0.1 in VB - In Konsolanwendungen bequem Tabellen verwenden.

    • Beta

    Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ViktorS.

      TableLib 1.5.0.1 in VB - In Konsolanwendungen bequem Tabellen verwenden.

      Bibliothek:
      Name:
      TableLib 1.5
      Screenshot:
      Spoiler anzeigen


      Uploaded with ImageShack.us


      Uploaded with ImageShack.us


      Entwickelt in:
      Visual Basic 2010 Express
      .NET Frameworks 2.0
      (mit allen Versionen ab der 2.0 Version kompatibel.)

      Entwickelt von:
      ViktorS

      Beschreibung:
      Mit der TableLib kann man in einer Konsolanwendung Tabellen erstellen und anzeigen lassen, fast so einfach wie in HTML.
      Die Tabelle besteht aus ASCII Code Zeichen und wird beim aufrufen wie ein Text geschrieben.

      Verwendung:
      In der Menüleiste unter Projekt auf Verweis hinzufügen... gehen.
      Dort den Tab Durchsuchen... auswählen und die DLL Datei öffnen.
      Im Quellcode in der aller ersten Zeile 'Imports TableLib' reinschreiben.
      Rest siehe Vorführung(in der TableLib.zip Datei, Projektmappe Öffnen, Quellcode von TableLibView lesen.).


      Veränderungen:
      Ausgabealgorythmus entwas stabiler gemacht.
      (Weniger Flimmern beim ständigem Aktualisieren der Anzeige in z.B. einer Schleife.)
      Zeilendesyncronisierung behoben.
      (Die Zeilenlänge bleibt gleich unabhängig von der Spaltenanzahl, also bei einer Zeile mit einer Spalte mit einer Breite von 50 und einer anderen Zeile mit zwei Spalten mit jeweils einer Breite von 25 sind beide Zeilen jetzt gleich lang.)
      Die Textposition kann jetzt nicht nur Horizonta sondern auch Vertical bestimmt werden.
      Man kann jetzt stann den Values einfach einen Sub ausführen lassen.
      (Man kann der Spalte statt einem Value einen Sub zuweisen(Delegate Subbing) und der zugewiesene Sub wird genau an der Stelle ausgeführt, wen sonst das Value geschrieben sein wörde. :huh:)

      Sonstiges:
      Lizenz:
      Die DLL ist kostenfrei und darf einkompiliert werden. Was jedoch nett were, aber nicht erforderlich ist, ist ein wehrend der Laufzeit für den Benutzer erreichbarer Verweis auf diesen Beitrag.(Hier im Forum)

      Tests:
      Die Lib wurde bisher erfolgreich getestet auf
      - Windows XP Professional 32Bit
      - Windows 7 Professional 32Bit

      Bitte:
      Bugmeldungen.
      Verbesserungsvorschläge.
      Veräderungsforschlege.
      Und alles was es sonst noch zu sagen gibt... ☺



      Info:
      In der TableLib.zip hier im Anhang befindet sich die Projektmappe, (richtig gedacht, mit dem original Quellcode ☺).
      Die Projektmappe beinhaltet die Lib und eine Vorschau.

      Wenn man F5 drückt(Debuggt) und es meldet sich der Fehler, dass eine Klassenbibliothek nicht ausgeführt werden kann, dann Rechtsklick auf die Mappe TableLibView und Als Standartprojekt festlegen klicken.

      TableLib 2.0 : 2%

      Features:
      - Komplett neues Grundsystem.
      Wird nicht mehr Zeile für Zeile geschrieben sondern vollständig in einer Matrix aufbereitet und dann geschrieben.
      Dadurch entsteht die Möglichkeit die Tabellenposition auszurichten. Und vieles mehr.(z.B. aktualisierung einer Zelle ohne, dass die gesammte Konsole aktualisiert werden muss.)
      - Klassenvererbung
      Objekte wie z.B. Zeile oder Spalte oder Value können vererbt werden. Dadurch können die Methoden verendert werden, so dass man in den Inhalt der Zellen noch besser eingreifen kann.
      - Rahmenumstellung
      Wer sich einen eigenen Rahmen anlegen möchte, kann den ASCII Code des Rahmens beliebig umändern.

      Und einiges mehr.
      Warte auf Vorschläge...
      Dateien
      • TableLib.zip

        (135,72 kB, 145 mal heruntergeladen, zuletzt: )

      Dieser Beitrag wurde bereits 9 mal editiert, zuletzt von „ViktorS“ ()

      HI, also erstmal tolle lib und danke für den sourcecode... ich hab auch gleich nen bug gefunden, bzw bei mir wirds so angezeit (in deinem screenshot scheints aber zu funktioniern):

      die hintergrundfarbe fäng eine Position zu früh an. Ich habe nichts am code verändert.

      Irgendeine Idee woran das liegen könnte?
      Ja, habe da schon eine idee.
      Wenn die Hintergrundfarbe der Zelle z.B. Rot ist und die HG Farbe der Zeile normalConsole.BackgroundColor), dann wird die HG Farbe der Zeile ebenfalls zu der HG Farbe der Zele. Und ich denke, dass es hierbei zu diesem 1Pixel strich zuviel kommt. Dazu muss man nur wenig Text in der Lib umändern.

      Schau dir dazu diese Zeile an, du findest sie in dem Objekt Col(ganz runter scrollen, dies sind die 3 letzten Zeilen.)

      VB.NET-Quellcode

      1. If Value.BackgroundColor = Console.BackgroundColor Then
      2. Write(strg, Value.Color, BackgroundColor)
      3. Else
      4. Write(strg, Value.Color, Value.BackgroundColor) 'Wichtig ist diese Zeile.(Es ist eine Zeile, habe diese nur wegen der Übersichtlichkeit zerlegt.)
      5. End Sub
      6. End Class