Skype API nachricht senden an alle die nicht gechecked sind

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Raf Gamer.

    Skype API nachricht senden an alle die nicht gechecked sind

    Mein Problem ist dass ich nicht weiß wie ich es mache das eine Nachricht an alle gesendet wird die in der CheckedListBox nicht gechecked sind

    Das ist der Code um eine Nachricht an die zu senden die gechecked sind:

    Quellcode

    1. ​ Do While i < CheckedListBox1.CheckedItems.Count
    2. Skype.SendMessage(CheckedListBox1.CheckedItems.Item(i), "Text")
    3. i = i + 1
    4. Loop



    Wie mache ich das jetzt dass eine Nachricht an die gesendet wird die nicht gechecked sind?

    Danke schonmal im Vorraus!

    VB.NET-Quellcode

    1. For Each i In CheckedListBox.Items.Except(CheckedListbox.CheckedItems)
    2. ' i ist dein Item
    3. End For


    /kein VS, also nicht getestet
    ~ Alex-Digital :D

    if(!Internet.VBP.Get<User>("Alex-Digital").IsOnline) this.Close(); :D
    Wieso benutzt du eine While-Schleife dafür? Das geht viel einfacher mit For-Each. Mit Linq geht das sogar ziemlich kurz:

    VB.NET-Quellcode

    1. For Each uncheckedItem In (From _item In CheckedListBox1.Items Where Not CheckedListBox1.CheckedItems.Contains(_item))
    2. Skype.SendMessage(uncheckedItem, "Text")
    3. Next


    MfG Tim

    Fortender schrieb:

    Wieso benutzt du eine While-Schleife dafür? Das geht viel einfacher mit For-Each. Mit Linq geht das sogar ziemlich kurz:

    VB.NET-Quellcode

    1. For Each uncheckedItem In (From _item In CheckedListBox1.Items Where Not CheckedListBox1.CheckedItems.Contains(_item))
    2. Skype.SendMessage(uncheckedItem, "Text")
    3. Next


    MfG Tim




    Danke! Hat funktioniert!
    Kein Problem. Ich bin mir nur noch unsicher ob man das guten Code nennen kann oder ob man das noch einfacher bzw. effizienter
    hinbekommen würde. Mit Except sollte das natürlich auch gehen, nur muss man dann scheinbar wild in der Gegend rumcasten, da
    CheckedListBox.Items nur eine blöde ObjectCollection ist, die Linq nicht zur Verfügung stellt. Mit der typisierten GetEnumerator-Extension-Funktion
    von @ErfinderDesRades sollte man das auch mit Except ziemlich leicht ohne vieles dumm rum casten hinbekommen wenn ich mich da net täusche :D

    MfG Tim

    Fortender schrieb:

    Kein Problem. Ich bin mir nur noch unsicher ob man das guten Code nennen kann oder ob man das noch einfacher bzw. effizienter
    hinbekommen würde. Mit Except sollte das natürlich auch gehen, nur muss man dann scheinbar wild in der Gegend rumcasten, da
    CheckedListBox.Items nur eine blöde ObjectCollection ist, die Linq nicht zur Verfügung stellt. Mit der typisierten GetEnumerator-Extension-Funktion
    von @ErfinderDesRades sollte man das auch mit Except ziemlich leicht ohne vieles dumm rum casten hinbekommen wenn ich mich da net täusche :D

    MfG Tim




    Das reicht mir schon, danke!
    Hast Du auch verstanden, was der Code macht und was dort zum Einsatz kommt? ;)

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Was er macht weißt du ja. Er erfüllt deinen Wunsch. Aber wenn ich mir dein Do-While Gefrickel anschaue, frage ich mich
    ob du überhaupt schonmal was von For oder For Each gehört hast. Schau dir am besten mal an wie Linq generell funktioniert.