StundenPlanor 1.0.0.0

    • Beta
    • Open Source

    Es gibt 38 Antworten in diesem Thema. Der letzte Beitrag () ist von Felixprogram.

      Da schreibe ich so lange an einem Feedback,dann kommt eine Fehlermeldung und dann ist alles weg. ... Ok, dann das Ganze in Kurzform:
      Bewertung
      Option "wenig Farbe" ändert fast nichts und die Statistiken sind aufgrund der hellen Hintergrundfarbe der Bars dann nicht mehr lesbar auf Papier
      In %
      Wertung in % :
      99.8%

      Ich schreib noch in "Bewertung" dazu,wenn ich noch einen Fehler/Verbesserungsvorschlag finde
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 15 mal editiert, zuletzt von „Felixprogram“ ()

      KidRick schrieb:

      MircoTuor schrieb:




      aber was kann dein Programm was Excel nicht besser kann?

      Du musst nicht Tage von Hand angeben? Du musst nichts installieren? Du musst nicht Excel mit fast 800MB installieren? Du hast alles auf einen Überblick und nicht x-Millionen von Dingen die dir ins Gesicht klatschen?


      die frage ist bloss wer hat heutzutage kein Excel?
      Gruss Mirco
      @ErfinderDesRades wie immer bist du wieder der Schlauste :D Habe ich wohl bei diesem kleinen Projekt übersehen... ich programmiere normalerweise nur Option Strict On!

      Auf jeden Fall vielen Dank, dass dir meine Anwendung angesehen hast :)
      Auf der Suche nach Coding-Kursen auf Lence.at
      Ah - wie gesagt: hab mich eiglich gewundert, wie wenig Fehler drinne waren ;)

      Den Code finde ich handwerklich im Groben gar nicht so schlecht (auch wenn ich im Detail wahrscheinlich keine Zeile so belassen würde :evil: ).
      Jedenfalls keine deiner Dateien ist zu einem Monstrum aufgebläht :thumbup: , du hast ein richtig verwendetes UserControl drinne :thumbup: , und sogar ein richtig verwendetes CustomControl :thumbup: .

      Nur das LinkLabel ist mit Kanonen auf Spatzen, denn denselben Effekt könntest du glaub auch durch ein paar EventHandler bewirken, dafür sollte man kein Control beerben.
      Aber vlt. auch nicht, nämlich wenn du das LL auf mehreren Forms verwendest, dann ist prinzipiell schon sinnvoll, dass die ihre Colorisierung "mitnehmen". Nur würde ich da ein Behavior empfehlen - es ist prinzipiell immer sehr mit Vorsicht zu genießen, eigene Controls zu basteln.

      Was der Anwendung wirklich noch fehlt, ist die Möglichkeit, einen Stundenplan auch abzuspeichern zu laden, zu ändern etc..
      Womit ich wieder bei meim Lieblingsthema wäre:
      Es existiert überhaupt kein Datenmodell.

      Naja, vlt. ist das UserControl auch nicht so dolle, denn im Grunde ist das dein Datenmodell:

      Visual Basic-Quellcode

      1. Public Class uc_Stunde : Inherits UserControl
      2. Public Property [Zeit] As String = ""
      3. Public Property [Mo] As String = ""
      4. Public Property [Di] As String = ""
      5. Public Property [Mi] As String = ""
      6. Public Property [Do] As String = ""
      7. Public Property [Fr] As String = ""
      8. Public Property [Index] As Integer = 0
      9. '...
      Also es ist klar ein Datensatz, und auffm Form fügst du ja auch mehrere davon zu einer Tabelle zusammen.
      Aber es gibt eine um Welten bessere Infrastruktur, um Datenmodelle zu bilden - von UserControl zu erben ist da nu wirklich kein guter Ansatz.
      Hallo KingTimon,

      ich habe einen Fehler in der Anwendung für dich:
      Fehler

      Wenn man bei "Zeit" etwas zu langes einträgt(z.B. 12:15-13:00) oder bei "Gegenstand" ein zu langes Fach(z.B. Mathematik) einträgt, geht es beim Drucken über die Tabellenspalte hinaus.
      Könnte man das nicht ändern/bei "Erstellen" die Spalten kleiner machen,damit man die maximale Länge sieht.


      Gruß Felixprogram
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Felixprogram“ ()

      Hi,

      vom Design her find ich dein Programm top, allerdings hätte man den Code schöner machen können. Am meisten ins Auge gesprungen sind mir Variablen bzw. Steuerelementnamen die Umlaute beinhalten wie nud_ErstellenLänge oder Zähler. Allgemein hätte es dem Code nicht geschadet, wenn die Namen auf Englisch gewesen wären. Trotzdem, ich finde dein Design beeindruckend, die Fehler im Code seien dir mal verziehen :D. Die Idee ist auch nicht ganz verkehrt, allerdings werden solche Stundenplaner doch eher fürs Handy verwendet. Dass man sich den Stundenplan doch gleich ausdrucken kann, ist wiederum etwas was das Programm praktischer macht, als den ganzen Stundenplan zuerst in Word einzutragen.

      LG
      Projekte
      @Quellcoder02
      Vielen Dank für das Feedback, ist echt faszinierend, dass ich auf dieses Thema noch Kommentare bekomme ^^ Momentan arbeite ich an einer Digitalisierungslösung für Bildungseinrichtungen, bei der der Stundenplan auch ein zentrales Element auf der Webplattform darstellt.

      Was sagt ihr dazu? :)

      Hiermit gebe ich den gesamten Code von StundenPlanor zur freien Verwendung (auch kommerziell) frei - vlt ist er ja irgendjemandem von Nützen.
      Auf der Suche nach Coding-Kursen auf Lence.at
      Ich denke, dass ist für Schüler sehr interessant.

      Die Idee ist gut. Wenn man das auf den Tablet laufen lässt, ist das mega Premium denke ich (also Windows Tab usw.)
      Ihr sucht Webspace für eure Projekte? Dann sagt bescheid - kostenfrei und ohne Werbung!
      Hallo @thomasuebi ,

      mir hat dein Projekt von Anfang an gefallen und nachdem ich gesehen habe, dass hier nicht mehr viel passiert und du den Code zur freien Verwendung freigegeben hast, dachte ich mir, weil ich noch einige Ideen und Verbesserungen im Kopf hatte, ich programmiere mal etwas weiter.
      Wäre es mir erlaubt, diese Version als "Update" (es wurden nur Dinge hinzugefügt und Codeteile verbessert, nichts entfernt) hier hochzuladen, damit ich die erweiterten Funktionen auch mit anderen teilen kann?
      Copyright von dir und so ist selbstverständlich noch drin.

      Grüße,
      Felixprogram.
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Felixprogram“ ()

      Hallo an alle!

      Da mir das Projekt sehr gefällt, habe ich mal etwas am Code gewerkelt und die ein oder andere Sache verbessert.

      Neuerungen in 1.1.0.0:
      • "wenig Farbe" wurde durch "Schwarz-Weiß" ersetzt, um noch mehr Farbe sparen zu können und damit es auch auf einem S/W-Drucker gut aussieht. Das Icon wird bei Auswahl nun auch in Graustufen angezeigt. Zudem wurden die Graustufen der Balken auf der Statistik im Schwarz-Weiß-Modus angepasst, um für einen passenden Kontrast zu sorgen und damit gute Lesbarkeit zu garantieren.
      • Es gibt nun die Möglichkeit, die Statistiken abzuschalten, wenn man mehrere Blätter drucken will und nicht jedes Mal eine seperate Statistik braucht.
      • Wenn bei "Erstellen" in ein Feld nichts eingetragen ist, wechselt es wieder zum Platzhaltertext
      • Aus Schönheitsgründen gibt es nun die Möglichkeit, Pausen als "-" zu markieren. Diese werden nicht in der Statistik der Stundenzahlen gelistet.
      Da das Projekt unter den selben Bedingungen weitergegeben wird, findet ihr natürlich auch die Projektmappe unten beim Download.

      Weitere Änderungen sind geplant und werden bald folgen. (Unter Anderem auch die Möglichkeit,den Stundenplan zu speichern, Räume anzugeben und Codeverbesserungen)

      Grüße,
      Felixprogram

      Edit: Für die Sicherheitsfanatiker unter euch ;) , da das Programm ja jetzt nicht vom TE. hochgeladen wurde Scan bei virustotal (ich weiß nicht, warum 2 es erkennen, sind evtl. false positives).
      Edit2: Schriftgröße und -art des Beitrags angepasst - das war im Vergleich wirklich etwas ziemlich groß
      Edit3: Wenn ihr noch Ideen oder Verbesserungsvorschläge habt, schreibt sie gerne hier und ich werde versuchen, sie einzubringen.
      Dateien
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 11 mal editiert, zuletzt von „Felixprogram“ ()

      Kurz zu meiner To-Do-Liste für die nächsten meiner Versionen von thomasuebis StundenPlanor-Projekt, damit sich nicht Ideen doppeln und ihr seht, was noch kommen wird:
      • Möglichkeit, den Stundenplan zu speichern und öffnen (damit man nicht jedes Mal den Stundenplan neu eingeben muss)
      • Möglichkeit, Räume anzugeben
      • Überarbeitung des "Datenmodells" bzw. Erstellung eines richtigen ( @ErfinderDesRades was würdest du denn empfehlen? Ich hab noch nicht so viel Erfahrung damit [generell mit Vb.net] und bräuchte ein Keyword, um mich einzulesen )
      • Edit (danke an VaporiZed): Generelle Anpassung des Projekts an Programmierstandards (empfohlene Projekteinstellungen, Codeduplikate löschen, sinnvolle Benennung von Variablen etc., Entfernung des Backgroundworkers)
      • Behebung von kleinen "Störquellen":
        • Begrenzung der Eingabefelder auf die maximale Länge, an der die Zeichen gerade noch nicht über den Zellenrand laufen
        • Möglichkeit zur Auswahl von anderen Designs für den Ausdruck
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Felixprogram“ ()

      Felixprogram schrieb:

      Überarbeitung des Datenmodells
      Was denn für ein Datenmodell? Die ganzen Daten werden in den CE-Beschriftungen gespeichert, wie ich so auf Anhieb gesehen habe. Laden und speichern? Fand ich nix. Datenmodell kannst Du diverse verwenden. Es muss nur konsequent sein. Du könntest es mit nem tDS machen (Am besten für den Anfang ohne DB, sondern tDS-only arbeiten. Nicht selten bleibt man auch ne ganze Weile dann tDS-only, weil es für lange Zeit ausreichend ist.) Oder advanced eben mit POCOs (oder sind das dann in VB.Net POVOs?) und z.B. mit Entity Framework an ne DB anbinden. Kann ja auch ne lokale oder gar memory-only-DB sein.
      Was ganz oben in der to-do-List stehen sollte:
      • die empfohlenen VS-Einstellungen verwenden
      • Codeduplikate entfernen
      • sinnvolle CE-Benennung
      • Backgroundworker entsorgen
      • CheckForIllegalCrossThreadCalls entfernen
      und ggf.Code (nicht die Programmtexte) komplett auf englisch umstellen (ist aber Ansichtssache)

      btw: Das MyTabControl scheint bei Mausklick-und-Ziehen Darstellungsprobleme zu haben.
      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

      Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
      Hallo @VaporiZed,
      Was denn für ein Datenmodell?

      Ich kenn mich mit der Fachsprache diesbezüglich noch nicht aus. ErfinderDesRades bezeichnete die Zwischenspeicherung, die thomasuebi in den Variablen (wenn man das "Variablen" nennen kann) des Usercontrols vorgenommen hat jedenfalls so. Ich habe den Text oben angepasst.
      Was ganz oben in der to-do-List stehen sollte:
      [...]

      okay, werde mich drum kümmern, ich will an dieser Stelle nur darauf verweisen, dass das Programm und damit auch der Code nicht ursprünglich von mir erstellt wurden.
      Ich muss mir erst mal alles an Code des Programms durchschauen, ich hab rein aus Zweckmäßigkeit meinerseits die paar Sachen oben hinzugefügt/geändert und wollte sie mit der Community teilen, um Cleanup des vorhanden Codes ging es mir dabei sekundär, das wollte ich hinten anhängen.
      Mir fehlt zudem als Vb.net-Anfänger auch noch etwas das Wissen zu der Thematik, das muss ich mir erst noch aneignen.
      btw: Das MyTabControl scheint bei Mausklick-und-Ziehen Darstellungsprobleme zu haben.

      schau ich mir auf jeden Fall an. Was meinst du genau damit? Gehe ich richtig in der Annahme, dass du das "Flackern" während des Vergrößerns und Verkleinerns des Fensters meinst?

      Alles in Allem danke für deine Verbesserungsvorschläge.
      Edit: Noch eine Frage zu diesen DataSets: Werden die Daten in einer Datei gespeichert oder einfach im ram zwischengespeichert? Ich bräuchte nämlich nur eine korrekte Möglichkeit, die Daten bezüglich Fächer der Stunden an den jeweiligen Tagen zwischenzuspeichern und dann von dort aus auf die Buttons abzubilden, würden diese DataSets das in einer Datei speichern, bräuchte ich was anderes. Danke schon im Voraus

      Grüße,
      Felixprogram
      Programmierer aus Leidenschaft - Ich programmiere mit: HTML, CSS, JavaScript, PHP, Java (überwiegend Spigot- & Android-Entwicklung), C#(.NET-Framework) und Visual Basic(.NET-Framework)

      Dieser Beitrag wurde bereits 14 mal editiert, zuletzt von „Felixprogram“ ()

      Felixprogram schrieb:

      Werden die Daten in einer Datei gespeichert oder einfach im ram zwischengespeichert?
      Während der Laufzeit im RAM und bei Bedarf kann man die Daten aus ner Datei laden oder in eine solche speichern.
      Bzgl. Darstellungsfehler lad ich ein Video hoch. Zur Designzeit führt das Klicken-und-Gedrückthalten zu tw. merklichen Verzögerungen in der Balkenbewegung. Im Video ist es ein etwas wildes Hin- und Hergeklicke und sicherlich auch nicht das normale Benutzerverhalten, aber beim ersten Ausprobieren der App ist es mir aufgefallen. Da kommen sich die ganzen MouseEventHandler wohl etwas in die Quere.
      Dateien
      • Aufnahme.zip

        (229,06 kB, 100 mal heruntergeladen, zuletzt: )
      Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

      Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.