Button für neue Form

  • VB.NET

Es gibt 16 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Button für neue Form

    Hallo,

    Ich möchte ein Programm erstellen, mit dem ich Daten in einer Textbox eingeben kann und diese Form dann in einem Menü ausgewählt werden kann.

    Das soll so aussehen:

    Laden:
    Zug 1
    Zug 2
    Zug 3

    Oder neuen Zug erstellen


    Wenn das neue Formular fertig ist, soll dies als Zug 4 unter Laden gezeigt werden.

    Wie geht das?
    Also, es gibt 12 Textboxen, der inhalt der jeder Textbox wird als txt gespeichert.
    es soll so sein, dass man ein Fenster bzw. ein Zugfenster öffnen kann. aber nur, wenn eins erstellt wurde. Unten soll ein Button hin, wenn man den anklickt, soll ein Fenster geöffnet werden, mit dem so ein leeres fenster erstellt werden kann.
    Beim schließen dieser Form soll diese Im auswahlmenü gezeigt werden.
    So soll die Form aussehen. Ich möchte dass man mit einem Button so eine Form "ausfüllen" kann. Diese soll dann beim Schließen gespeichert werden. Man soll dann diese in einem Menü gewählt werden kann.
    Bilder
    • beispiel zug openttd.PNG

      7,01 kB, 274×254, 98 mal angesehen

    HSVan schrieb:

    mit dem ich Daten in einer Textbox eingeben kann und diese Form dann
    Wasm soll das bedeuten? Kannst Du die Frage mal so formulieren, dass wir nicht zig mal nachfragen müssen?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Da war ich ja auf dem völlig falschen Gleis ;)

    Also, mein schneller, Ansatz wäre, du hast exakt 2 Forms. Eine mit deiner Liste der Züge, und die andere, die nur das Formular enthält. Sobald jemand auf Hinzufügen klickt, öffnest du eine neue Form, mit dem von dir gezeigten Dialog. Mit form.showDialog() wäre es sogar einfach zu verhindern, dass jemand während der Eingabedialog offen ist, am Hauptfenster artbeitet. Nachdem alles eingegeben ist, und auf den Button speichern gedrückt wurde, werden alle daten in eine .txt Datei geschrieben, mit welcher Anordnung auch immer du haben willst. Wird der Dialog beendet (was du entweder per Event, oder über if(form.showDialog() == DialogResult.whatever) mitgeteilt bekommst) so lädst du die Liste der Vorhandenen Züge neu.
    Da war ich ja auf dem völlig falschen Gleis

    Also, mein schneller, Ansatz wäre, du hast exakt 2 Forms. Eine mit deiner Liste der Züge, und die andere, die nur das Formular enthält. Sobald jemand auf Hinzufügen klickt, öffnest du eine neue Form, mit dem von dir gezeigten Dialog. Mit form.showDialog() wäre es sogar einfach zu verhindern, dass jemand während der Eingabedialog offen ist, am Hauptfenster artbeitet. Nachdem alles eingegeben ist, und auf den Button speichern gedrückt wurde, werden alle daten in eine .txt Datei geschrieben, mit welcher Anordnung auch immer du haben willst. Wird der Dialog beendet (was du entweder per Event, oder über if(form.showDialog() == DialogResult.whatever) mitgeteilt bekommst) so lädst du die Liste der Vorhandenen Züge neu. ​


    Genau. Jetzt fehlt nur noch eine genaue Beschreibung.

    HSVFan schrieb:

    eine genaue Beschreibung
    Wovon?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Das war so ziemlich genau das was du nun tun sollst.

    Du willst Code?, dann les dich mal durch folgende Sachen und schau was du benutzen kannst, Hinweiß, alle Links führen zu MSDN.:
    ShowDialog
    File
    FileStream
    Form-Closing-Event
    ListView

    So, Nun hast du alle Werkzeuge die du brauchst.

    Edit: Kann es sein, dass du noch gar nicht so lange am Programmieren bist?
    also deim Bildle nach zu schließen willst du eine Datenverarbeitung für Züge aufbauen, sogar mit Fahrplan.
    Dafür reichen die bisher gegebenen Ansätze nicht aus, sondern du mußt Datenbänkerei erlernen.

    Versuch erstmal mit Daten laden, speichern, verarbeiten klarzukommen, und einfacherweise nur mit einer Tabelle, also dass du Züge anlegen kannst.
    Wie das Form zunächstmal aussieht ist dabei oberschnurz, hauptsache du kannst Züge anlegen, editieren löschen, und den Sermon laden + speichern.

    Die Gestaltungsmöglichkeiten dieser Technologie werden dann in vier Views-Videos behandelt, dein geplantes Form etwa ist v.a. ein DetailView der Züge.

    Wenn du soweit bist, kannst du solch in 10 Minuten zusammenklicksen (die Filme sind ja auch nicht länger)
    Aber tu nicht den 2. Schritt vor dem ersten, also erstmal "Daten laden, speichern, verarbeiten" in den Griff bekommen.
    Man wächst mit seinene Herausforderungen, und auf diese wirst du zu hauf treffen in der Programmierung. Oft wirst du etwas finden, dass ungefähr dme Entpsricht, was du benötigst, hin und wieder musst du jedoch deine eigene Lösung "erfinden". PRogrammieren ist vorallem am Anfang viel Lesen, Lernen und üben, später wird der Teil des effektiven Programmierens größer, doch auch hier wirst du immer wieder auf neues stoßen, das Einarbeitungszeit benötigt.

    HSVFan schrieb:

    Gibt es das auch einfacher?
    Nein.
    Datenverarbeitung umfasst standardmäßig mindestens: DateiZugriffe (lese/schreib), Datenmodellierung (von einfach bis komplex), Konvertierung (hin/rück), editieren, canceln, zufügen, löschen,
    meist auch: sortieren, filtern, validieren und weitere individuelle Verarbeitungsschritte.

    Das muss alles gelöst sein, auf die eine oder annere Weise.
    Nun kannst dus dir "einfach machen", und schritt für schritt vor dich hinwursteln, und von einer Problem-Falle in die annere tappen, und immer wieder dich rauswursteln. Damit hast du am Ende dann auch alle obigen Punkte bewältigt, hast allerdings 4mal so lange gebraucht, 10 - 100-fachen Code produziert und sind immer noch Bugs drin, kann kein Mensch mehr nachvollziehen, und beim nächsten Projekt wirst du wieder so loswursteln.

    Du kannst es dir auch "schwer machen", indem du dich in die bereitstehende Technologie einarbeitest. Dann bist du schneller fertig, die Lösung ist kompakt, standardisiert, bugfrei, nachvollziehbar, und mit nur winzigen Abwandlungen auf alle möglichen weiteren Projekte ebenso anwendbar.
    Also wenn du die Technik gelernt hast, dann schreibst du für konkret dein Problem in 30 Minuten und mit 20 Zeilen eine Lösung, die funzt.
    Einfacher gehts nicht.