السلام عليكم
كنت وقد طلبت منك كود واعطتيني اياه وطبقتو ع كافة الاكواد وزبط الحمد لله
والكود هوا
كود :
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
وشكرا لك اخي ولكافة من يساعدني
السلام عليكم
يبدو لي ان الكود لا يحتاج الى ProgressBar لأنه ينفذ عملية واحدة وليس على مجموعة كالجود السابق، فلم أعرف ما المشكلة الآن التي تواجهها.
المشكلة انه اذا وضعت هذا المود في تايمر لحذف مصفوفات من لست بوكس بطلع خطأ وبرنامج بهنج اريد حذف مصفوفات عبر الكود التالي
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
لتوضيح اكتر اريد اضافة مصفوفات في لست بوكس
الي وكود اعلاه مع توضيح للمستخدم اضافة كافة الايميلات
وبعد مجهودي حصلت ع هذا كود ولكن اريدك نظر للكو هل يوجد فيه اخطاء ام لا وشكرا ع اهتمامك الجبار
كود :
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
او اي شي يوضح للمستخدم من انتهاء اضافة كافة الايميلات بنجاح
وشكراً
في بداية الموضوع ذكرن الحذف 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
رجاء بسيط، لا تعمل توسيط لمشاركاتك فهي صعبة في القراءة
اخي شكرا الك ولكن نك الادمن بفصل لا اعرف سبب
عند اضافة كافة الايميلات يفارض ان يبقي متصل ولا يفصل
انا طبقت هذا الكود ولمن تظهر خطأ الرجاء منك ايجاد المشكلة
كود :
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
صورة عن المشكة
وشكراً لمجهودك اخي