Label's abhängig vom Buttondruck erscheinen lassen

  • VB.NET

Es gibt 21 Antworten in diesem Thema. Der letzte Beitrag () ist von datsspeed.

    Label's abhängig vom Buttondruck erscheinen lassen

    hy hy :)

    Da ich ich bis jetzt positiv überrascht bin von diesem Forum, und für mein Projekt noch eine kleine Hürde habe, stell ich
    die Frage auch hier, wer ne realisierungs Idee hat und so nett ist, sie mir mitzuteilen.

    Im Anhang findet Ihr ein Bild der Form
    Label bennenung von Links oben nach Rechts unten Label1, Label2, Label3...

    Folgendes Sollte passieren:
    Wenn die Form aufgerufen wird, sollte nur Label1 erscheinen.
    Bei Druck von IO oder NIO soll soll das Label2 erscheinen.
    Bei wiederholtem Druck von IO oder NIO soll Label3 erscheinen

    Die IO und NIO Ergebnisse werde ich später in einem .txt File abspeichern müssen.
    Aber erstmal wollte ich das erscheinen der Texte fertig realisieren.

    Ich bedanke mich im voraus schonmal für sämtliche Vorschläge.

    gruß andy
    Bilder
    • Bild1.jpg

      187,56 kB, 2.400×1.350, 193 mal angesehen
    ahoi,

    die steuerelemente haben eine visible - eigenschaft die du verändern kannst also =true oder =false
    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de
    Du stellst die oben genannte Visible-Eigenschaft von Label 2 und 3 auf False. Beim 1. Drücken soll das 2. Label erscheinen, beim 2. Drücken das 3. Label:

    VB.NET-Quellcode

    1. If Label2.visible = False then 'Es wird geprüft ob Label2.visible = fals ist
    2. Label2.Visible = true 'ist das so wird die Visible-Eigenschaft auf True gesetzt
    3. else
    4. Label3.Visible = true 'Ansonsten die vom 3. Label
    5. End If
    hey ^^ so schreibt man sich wieder *g*

    also im form load sagst einfach mal

    VB.NET-Quellcode

    1. Label1.visible = true
    2. Label2.visible = false
    3. Label3.visible = false

    somit ist erste lalbel beim start nur sichtbar

    klick io / nio

    VB.NET-Quellcode

    1. if not label2.visible = true then
    2. label2.visible = true
    3. else
    4. label3.visible = true
    5. end if

    des hauste dann einfach in io und nio rein ^^

    lg datsspeed
    Einen Wunderschönen Guten Morgen all together..
    Danke für die Vorschläge...

    VB.NET-Quellcode

    1. If PictureBox1.Visible = true then
    2. PictureBox2.Visible = true and
    3. Label3.Visible = true and
    4. Label4.Visible = true
    5. else
    6. exit sub
    7. end if


    funktioniert leider nicht. Den Code habe ich so im IO Button drin stehen, könnt ihr ein fehler entdecken?
    @datsspeed: jaaa, so schnell hört man sich wieder ;) ich sollte bis morgen mit meim Projekt fertig sein. Bin auf dem besten Wege... ;)
    moin ^^ versuchs mal ohne and... obs dann geht..

    bzw was willste nu so erreichen

    momentan steht da wenn bild 1 sichtbar dann mache sichtbar bild2 label3 und label 4 andern falls verlasse den sub ...

    stimmt des so ?

    lg :thumbsup:
    WENN bild 1 sichtbar ist & button gedrückt wird (deswegen der code im button drin)
    DANN mache bild 2 sichtbar, sowie label 3 und label4

    das soll passieren, genau :)
    ohne die "and" 's hats funktioniert ;)
    jetzt lernste progammieren mit and etc....
    im Jahr 2010 brauchstes nich mehr.. :)
    ist nicht so das des mit den ands falsch ist....


    da sieht dann halt syntax anderst aus


    VB.NET-Quellcode

    1. If PictureBox1.Visible = true then
    2. 'so würde es gehen mit ands alles in eine zeile quetschen
    3. ' ist aber recht un übersichtlich deshalb machens viele direkt so:
    4. PictureBox2.Visible = true and Label3.Visible = true and Label4.Visible = true
    5. else
    6. exit sub
    7. end if


    VB.NET-Quellcode

    1. If PictureBox1.Visible = true then
    2. 'so würde es gehen mit ands alles in eine zeile quetschen, durch
    3. 'untersriche wird sozusagen ein zeilenumbruch angesagt würde auch gehen
    4. ' ist aber recht un übersichtlich deshalb machens viele direkt so:
    5. PictureBox2.Visible = true and _
    6. Label3.Visible = true and _
    7. Label4.Visible = true
    8. else
    9. exit sub
    10. end if




    ist aber beides recht un übersichtlich deshalb machens viele direkt so:

    VB.NET-Quellcode

    1. If PictureBox1.Visible = true then
    2. 'Viel übersichtlicher
    3. PictureBox2.Visible = true
    4. Label3.Visible = true
    5. Label4.Visible = true
    6. else
    7. exit sub
    8. end if


    lg =)
    Ich muss es jetzt aber doch anders realisieren... Da es ja 16 Labels sind.
    Ich hab jetzt ne Variable gemacht als string, und möchte das die bei jedem click 1 hochzählt.
    In dem Code der Labels soll dann stehen " if <variableASstring> 4 beinhaltet mache diesen label.visible = true


    wär das so auch möglich?
    du kannst abfragen ob labels schon sichtbar sind .... und wenn nicht diese sichtbar machen wäre um einiges ordentlicher und kommt danna uch garantiert nicht zu laufzeitfehlern lg
    Ich sag jetzt einfach mal ganz frech (das kann so aber nich gehen ohne weiteres) :)

    wenn ich im IO button eingebe...

    VB.NET-Quellcode

    1. 'Bild2 und Label3+4 sichtbar machen
    2. If Label2.visible = true then
    3. PictureBox2.visible = true
    4. Label3.visible = true
    5. Label4.visible = true
    6. else
    7. exit sub
    8. end if
    9. 'Label 5+6 sichtbar machen
    10. If Label4.visible = true then
    11. Label5.visible = true
    12. Label6.visible = true
    13. else
    14. exit sub
    15. end if


    Bei klicken erscheint ja jetzt logischer weiße alles auf einmal weil von oben nach unten abgearbeitet wird und alles zutrifft.
    Deswegen dachte ich ich zähle die klicks des buttons, oder was habt ihr für eine idee ohne zählen?!
    du kannst ja abfragen ob von der obereden abfrage die labels suichtbar sind wenn ja dann weiste ja die untere abfrage darf nun aktiv sein weil die obere abfrage schon dran war....

    natürlich kannste auch einen zähler deklairen und dann mit select case springen lassen ^^ ist halt nur nicht die feine englische art :P

    PS. ich habe es schon recht oft auf die select case methode gehmacht funktioniert einfach und tippt man schnell runter...
    beachte aber den else fall sobald undeklaierte zahlen drankommen sollten...

    lg
    so...


    VB.NET-Quellcode

    1. 'Bild2 und Label3+4 sichtbar machen
    2. If Label2.visible = true then
    3. PictureBox2.visible = true
    4. Label3.visible = true
    5. Label4.visible = true
    6. 'Label 5+6 sichtbar machen
    7. elseIf Label4.visible = true then
    8. Label5.visible = true
    9. Label6.visible = true
    10. else
    11. exit sub
    12. end if



    lg^^


    @EDIT: Fehler von dir war das du oben bei der ersten if abfrage in else fall = exit sub gesprungen bist und dadurch net zur 2ten kommen ist ^^

    nutz die funktion elseif die passt da recht gut...

    und am ende kannste dann des else immernoch lassen mit dem exit sub ...
    warte ich stell mal nen code zamm gib mir mal 10 minuten...


    so der kaffee wirkt =)

    schreib des ganze rückwerts :P

    der code ist getestet und funktioniert bei mir =)

    VB.NET-Quellcode

    1. 'Label 5+6 sichtbar machen
    2. If Label4.Visible = True Then
    3. Label5.Visible = True
    4. Label6.Visible = True
    5. 'Bild2 und Label3+4 sichtbar machen
    6. ElseIf Label2.Visible = True Then
    7. PictureBox2.Visible = True
    8. Label3.Visible = True
    9. Label4.Visible = True
    10. Else
    11. Exit Sub
    12. End If

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „datsspeed“ ()

    kein ding und sry nochmal -.- ich bin eifnach noch nich ganz wach heute...

    du könntest ees auch natürlich mit einer and abfrage machen ohne rückwerts schreiben :P


    wenn label2 und 4 sichtbar dann mache 5 und 6 sichtbar
    wenn label 2 sichtbar und 4 nicht dann mache 34 sichtbar...
    verstehst wie ich meine?

    lg

    PS: diesmal keine daumen ? XD :thumbsup:
    :thumbsup: :thumbsup: :thumbsup: :thumbsup: beschwer dich jetzt nich es sind zu wenig ;) top arbeit bzw. hilfsbereitschaft dankeschön! ;)

    eine kleines feature brauch ich noch rein, bezüglich der sicherheit... die Damen, welche an dieser Prüfmaschine arbeiten werden, haben ja lange Fingernägel, jetzt will ich es noch gewährleisten das sie nicht ausversehen 2mal auf den button klicken...

    einfach kurz nach jedem elseif fall ein delay von 2 sekunden :)
    das hatte ich ja letztens schonmal gefragt, aber da ham wir ja dann ne andere lösung bevorzugt.
    wie funktioniert ein delay im vs?
    delay(10) etc. funktioniert ja nich :(