PDA

View Full Version : مبتدی: حذف عناصرلیست باکس



mohammad1314
جمعه 19 آبان 1391, 17:02 عصر
سلام.
من در برنامم یک دکمه یک تکست باکس و یک لیست باکس دارم .
میخوام بنویسم اگه عدد داخل تکست باکس با اندیس یکی از عناصر لیست باکس برابر بود ، اون رو پاک کنه و اگر همچی اندیسی در لیست باکس نبود ، پیغام no بده.

( با استفاده از متد RemoveAt )

JaVa
جمعه 19 آبان 1391, 17:30 عصر
سلام و....

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim index As Integer

If ListBox1.Items.Count < 0 Then
MsgBox("لیست باکس خالی هست.")
End If

index = TextBox1.Text
ListBox1.Items.RemoveAt(index)

End Sub

mohammad1314
جمعه 19 آبان 1391, 17:45 عصر
ببخشید دوست من . کد شما رو اجرا کردم . در صورتی که اندیس داخل تکست باکس با یکی از اندیس های لیست باکس برابر باشه اون رو پاک میکنه ولی اگه نباشه پیغام نمیده و error میده .

JaVa
جمعه 19 آبان 1391, 17:57 عصر
کافی بود یه شرط براش بزاری

اینجوی :
Dim index As Integer

If ListBox1.Items.Count < 0 Then
MsgBox("لیست باکس خالی هست.")
End If

index = TextBox1.Text

If index < ListBox1.Items.Count Then

ListBox1.Items.RemoveAt(index)
End If


موفق باشید.

mohammad1314
جمعه 19 آبان 1391, 18:27 عصر
ممنون درست بود .
موفق باشید

فرید نجفلو
جمعه 19 آبان 1391, 18:32 عصر
سلام
کد دوستون رو اصلاح می کنم:
Dim index As Integer

If ListBox1.Items.Count < 0 Then
MsgBox("لیست باکس خالی هست.")
End If

If Not Isnumeric(TextBox1.Text) OrElse Cint(TextBox1.Text)<0 Then
MsgBox("لطفا یک عدد صفر یا بزرگتر وارد نمایید.")
End If

index = Cint(TextBox1.Text)

If index < ListBox1.Items.Count Then
ListBox1.Items.RemoveAt(index)
Else
MsgBox("موجود نمی باشد")
End If