Verbesserungs möglichkeit ?

  • VB.NET

Es gibt 36 Antworten in diesem Thema. Der letzte Beitrag () ist von SystemUnknow.

    Eine Form app ist Event basierend, nutze diese events, sowas wie

    VB.NET-Quellcode

    1. While Me.Visible = True
    2. My.Application.DoEvents()
    3. End While
    tut einem in der seele weh

    back to problem:
    ich weiß nicht ob es was das angeht einen cache hat, aber um deine frage zu beantworten: der pc ist weder schlau noch dumm, er verarbeitet nur.
    mit dem Closen wird alles geunloaded, du müsstest also theoretisch deinen eignen cache schreiben
    @Warfley: Wenn die Form geschlossen wird, werden soweit ich weiß nur deren Ressourcen entladen, nicht aber die globalen Ressourcen ;)
    Okey hab nu fast alles umgeschrieben.
    Aber wie sieht es mit solchen sachen aus:?

    VB.NET-Quellcode

    1. Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click
    2. Datenverwaltung.Lösche_Eintrag(ComboBox3, "Auftragsnummer")
    3. End Sub
    4. Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem4.Click
    5. Datenverwaltung.Lösche_Eintrag(ComboBox4, "Gerätebezeichnung")
    6. End Sub
    7. Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem5.Click
    8. Datenverwaltung.Lösche_Eintrag(ComboBox5, "Gerätetyp")
    9. End Sub
    10. Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem6.Click
    11. Datenverwaltung.Lösche_Eintrag(ComboBox6, "Skaleneinheit")
    12. End Sub
    13. Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem7.Click
    14. Datenverwaltung.Lösche_Eintrag(ComboBox7, "Medium")
    15. End Sub




    Kann man da auch was drann ändern?
    Du kannst das alles in eine einzige Routine packen:

    VB.NET-Quellcode

    1. Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click, ToolStripMenuItem4.Click, ToolStripMenuItem5.Click, ToolStripMenuItem6.Click, ToolStripMenuItem7.Click
    2. Dim tmi = DirectCast(sender, ToolStripMenuItem)
    3. If(tmi.Equals (ToolStripMenuItem3)) Then
    4. Datenverwaltung.Lösche_Eintrag(ComboBox3, "Auftragsnummer")
    5. ElseIf(tmi.Equals (ToolStripMenuItem4)) Then
    6. Datenverwaltung.Lösche_Eintrag(ComboBox4, "Gerätebezeichnung")
    7. ' ...
    8. End If
    9. End Sub
    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!
    vor allem - bitte!! die ToolstripItems vernünftig benennen!

    Für ToolStripMenuItem1 bis ToolStripMenuItem5 gehört man erschossen. Die Dinger sollen verschiedene Sachen löschen, und das muß auch draufstehen, und so müssen die auch heißen.

    VB.NET-Quellcode

    1. Private Sub ToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) _
    2. Handles tsiLoescheAuftrag.Click, tsiLoescheGeraet.Click, tsiLoescheSkalenEinheit.Click '...
    3. Select Case True
    4. Case sender Is tsiLoescheAuftrag
    5. Datenverwaltung.Lösche_Eintrag(ComboBox3, "Auftragsnummer")
    6. Case sender Is tsiLoescheGeraet
    7. Datenverwaltung.Lösche_Eintrag(ComboBox4, "Gerätebezeichnung")
    8. Case sender Is tsiLoescheSkalenEinheit
    9. Datenverwaltung.Lösche_Eintrag(ComboBox5, "Skaleneinheit")
    10. End Select
    11. End Sub

    Ach, und derselbe K..k mitte Comboboxen

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Warfley schrieb:

    und seit wan funktionieren umlaute
    Seit der deutschen Version des Studios xxx.
    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!
    Dann müsste auch Symbol (grichisch) gehen, geht aber nicht.

    VB.NET-Quellcode

    1. Dim  As Integer = 4
    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!
    Doch, das verhindert nur die IDE, nicht .NET selbst. Du kannst auch beispielsweise die ASCII-Codes 0x01 (SOH) oder 0x02 (STX) als Klassennamen benutzen. Sieht man gut bei Kinsi's Detrialme #1 wegen {smartassembly}.

    lg SeriTools
    | Keine Fragen per PN oder Skype.
    statt zig funktionen zu schreiben, kannst du eigenes objekt erzeugen. Für Objekt schreibst Methoden oder Eigenschaften z.b Daten hinzufügen, Bearbeiten, Löschen usw...inhalt des Objektes kannst z.b in Datenbank oder in Datei abspeichern und spähter wieder die Daten einlesen.
    So erzeugst du dir dein Objekt (Beispiel):

    VB.NET-Quellcode

    1. Structure Daten
    2. public RegistrierNummer As Intger
    3. public Hersteller As String
    4. public SerienNummer As Integer
    5. public AuftragsNummer As Integer
    6. End Structure
    7. 'Für mehrere Eingeben Array Objekt erzeugen
    8. Private dDaten() As Daten
    9. 'Methoden für Objekt definieren oder kannst Eigenschaften einsetzen
    10. '*********************************
    11. 'Funktion/Prozedur für Daten hinzufügen
    12. 'Funktion/Prozedur für Daten bearbeiten
    13. 'Funktion/Prozedur für Daten löschen
    14. 'Funktion/Prozedur für Daten anzeigen
    15. 'Funktion/Prozedur für Daten suchen
    16. '.....
    17. 'usw


    der Code kannst in Klasse oder in Modul auslagern z.b wenn du deine Anwendung spähter erweitern willst,
    sparst du dir jede menge zeit für umschreiben und anpassen.
    Mein Tipp: setzt dich mit OOP ausseinander

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „SystemUnknow“ ()