تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] اخ مساعدة الرجاء النظر الي هذا موضوع
#1
السلام عليكم
كنت وقد طلبت منك كود واعطتيني اياه وطبقتو ع كافة الاكواد وزبط الحمد لله
والكود هوا
كود :
Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork

       Jids = id.Text.Split("#")
       Dim i, j As Integer
       For i = 0 To Jids.Length - 1
           For j = 0 To ListBox1.Items.Count - 1
               emad(i).Send(String.Concat(New String() {"<iq type='set' id='nimbuzz_submitroomconfingform' to='" & ListBox1.Items(j) & "@conference.nimbuzz.com'><query xmlns='http://jabber.org/protocol/muc#owner'><x type='submit' xmlns='jabber:x:data'><field var='FORM_TYPE'><value>http://jabber.org/protocol/muc#roomconfig</value></field><field var='muc#roomconfig_roomname'><value>" & ListBox2.Items(j) & "</value></field><field var='muc#roomconfig_maxusers'><value>25</value></field><field var='muc#roomconfig_publicroom'><value>1</value></field><field var='muc#roomconfig_persistentroom'><value>1</value></field><field var='muc#roomconfig_membersonly'><value>0</value></field><field var='muc#roomconfig_whois'><value>anyone</value></field></x></query></iq>"}))
               Threading.Thread.Sleep(20 * 1000)
               Dim a As Integer = (i + j)
               Dim b As Integer = (ListBox1.Items.Count + Jids.Length)
               Me.ProgressBar1.Invoke(Sub()
                                          Me.ProgressBar1.Value = ((a + 1) / (b)) * 100
                                      End Sub)
           Next
       Next
     
   End Sub
اما الان واجاهتني  مشكلة وهي اريد تطبيق الكود اعلاه ع نفس هذا كود
كود :
   Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
       Me.emad.Send(String.Concat(New String() {"<iq to='", Me.room1, "@conference.nimbuzz.com' type='set'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='", Me.ListBox1.Items.Item(0).ToString, "@nimbuzz.com' /></query></iq>"}))
       Threading.Thread.Sleep(20 * 1000)
       Me.ListBox1.Items.RemoveAt(0)
   End Sub

وشكرا لك اخي ولكافة من يساعدني Heart
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم

يبدو لي ان الكود لا يحتاج الى ProgressBar لأنه ينفذ عملية واحدة وليس على مجموعة كالجود السابق، فلم أعرف ما المشكلة الآن التي تواجهها.
الرد }}}
تم الشكر بواسطة: 3asfa~mdmra , 3asfa~mdmra
#3
المشكلة انه اذا وضعت  هذا المود في تايمر لحذف مصفوفات من لست بوكس بطلع خطأ وبرنامج بهنج اريد حذف مصفوفات عبر الكود التالي
 Me.emad.Send(String.Concat(New String() {"<iq to='", Me.room1, "@conference.nimbuzz.com' type='set'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='", Me.ListBox1.Items.Item(0).ToString, "@nimbuzz.com' /></query></iq>"}))
      Me.ListBox1.Items.RemoveAt(0)
ولكن اريد ربط هذا الكود ProgressBar واذا لم يتفذ عبر ه اريد ان اعطي للمستخدم مشاهدة مايحث عند ضغط علي زر تشغيل تايمر
فقط هي الفكرة وشكراً

وانا اجتهدت من نفسي ولكن اريد تحويل textbox1 اليlistbox1
عبر الكود تالي
كود :
 Me.ProgressBar1.Value = 0
       Dim strArray As String() = Me.TextBox1.Text.Split(New Char()

{"#"c})
       Me.ProgressBar1.Maximum = strArray.Length
       Dim i As Integer = 0
       Do While (i <= strArray.GetUpperBound(0))
           emad.Send(String.Concat(New String() {"<iq to='" + room.Text

+ "@conference.nimbuzz.com' type='set' id='179'><query

xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast'

jid='", strArray(i), "@nimbuzz.com' /></query></iq>"}))
           Me.ProgressBar1.Value += 1
           i += 1
       Loop
       Timer1.Enabled = False
       MessageBox.Show("End ADD 10.000 Id")
مع العلم ان مصفوفات لست بوكس 
كتالي 
emad1
emad2
emad3


لتوضيح اكتر اريد اضافة مصفوفات في لست بوكس
الي وكود اعلاه مع توضيح للمستخدم اضافة كافة الايميلات
الرد }}}
تم الشكر بواسطة:
#4
وبعد مجهودي حصلت ع هذا كود ولكن اريدك نظر للكو هل يوجد فيه اخطاء ام لا وشكرا ع اهتمامك الجبار
كود :
Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
       Try
           Dim s As Integer
           For s = 0 To Me.ListBox1.Items.Count - 1
               Me.emad.Send(String.Concat(New String() {"<iq xmlns='jabber:client' to='", Me.room1, "@conference.nimbuzz.com' type='set' id='353'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='" & Me.ListBox1.Items.Item(s).ToString & " /></query></iq>"}))
               Me.ListBox1.Items.Add(s)
               Me.Label1.Text = ("id ban : [" & Me.ListBox1.Items.Count & "]")
               Me.ProgressBar1.Invoke(Sub()
                                          Me.ProgressBar1.Value = ((i + 1) / List.Count) * 100
                                      End Sub)


           Next
       Catch ex As Exception

       End Try
   End Sub
فكرة برنامج اضافة عدد من المستخدمين في listbox1 بشكل تالي
banuser1
banuser2
banuser3
اريد اضافة هذه مصفوفات الي كود هذا فقط هي فكرة برنامج
كود :
Me.emad.Send(String.Concat(New String() {"<iq xmlns='jabber:client' to='", Me.room1, "@conference.nimbuzz.com' type='set' id='353'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='" & Me.ListBox1.Items.Item(s).ToString & " /></query></iq>"}))
مع العلم اريد توضيج مايجري داخل كود للمستخدم
بواسطة  ProgressBar1
 او اي شي يوضح للمستخدم من انتهاء اضافة كافة الايميلات بنجاح
وشكراً
الرد }}}
تم الشكر بواسطة:
#5
في بداية الموضوع ذكرن الحذف Me.ListBox1.Items.RemoveAt
وفي آخر الموضوع ذكرت الإضافة Me.ListBox1.Items.Add

لكن سأجيبك على أساس RemoveAt والذي هو منطقي تفضل الكود
كود :
   Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork

       Dim count As Integer = Me.ListBox1.Items.Count

       Dim i As Integer
       For i = 0 To Me.ListBox1.Items.Count - 1

           Me.Label1.Invoke(Sub()
                                Me.Label1.Text = ("id ban : [" & Me.ListBox1.Items(0).ToString & "]")
                            End Sub)

           Me.emad.Send(
               String.Concat(New String() {
                             "<iq xmlns='jabber:client' to='",
                             Me.room1,
                             "@conference.nimbuzz.com' type='set' id='353'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='" & Me.ListBox1.Items(0).ToString & " /></query></iq>"
                         }))


           Me.ProgressBar1.Invoke(Sub()
                                      Me.ProgressBar1.Value = ((i + 1) / count) * 100
                                  End Sub)
           Threading.Thread.Sleep(1000)

           Me.ListBox1.Invoke(Sub()
                                  Me.ListBox1.Items.RemoveAt(0)
                              End Sub)

       Next

   End Sub

رجاء بسيط، لا تعمل توسيط لمشاركاتك فهي صعبة في القراءة
الرد }}}
تم الشكر بواسطة: 3asfa~mdmra , 3asfa~mdmra
#6
اخي شكرا الك ولكن نك الادمن بفصل لا اعرف سبب
عند اضافة كافة الايميلات يفارض ان يبقي متصل ولا يفصل

انا طبقت هذا الكود ولمن تظهر خطأ الرجاء منك ايجاد المشكلة
كود :
 Private Sub BackgroundWorker4_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker4.DoWork
       Me.ProgressBar1.Value = 0
       Dim strArray As String() = ListBox1.SelectedItem
       Me.ProgressBar1.Maximum = strArray.Length
       Dim i As Integer = 0
       Do While (i <= strArray.GetUpperBound(0))
           emad.Send(String.Concat(New String() {"<iq to='" + room1 + "@conference.nimbuzz.com' type='set' id='179'><query xmlns='http://jabber.org/protocol/muc#admin'><item affiliation='outcast' jid='", strArray(i), "@nimbuzz.com' /></query></iq>"}))
           Me.ProgressBar1.Value += 1
           i += 1
       Loop
       Timer1.Enabled = False
       MessageBox.Show("End ADD 10.000 Id")
   End Sub
صورة عن المشكة
وشكراً لمجهودك اخي
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم