PDA

View Full Version : سوال: چطور میشه در زمان اجرا در کمبو باکس نوشت وایتم نوشته شده به ان اضافه شود



oliya24
پنج شنبه 10 شهریور 1390, 01:25 صبح
سلام و خسته نباشید دوستان من میخوام در برنامم این امکان رو به کاربر بدم که بتونه در زمان اجرا به کمبو باکس ایتم اضافه کنه یعنی در ان بنویسه و ایتم همان موقع به کمبو باکس اضافه شود میشه کمکم کنید ؟؟؟؟؟؟؟؟؟

h_a_m_i_d
پنج شنبه 10 شهریور 1390, 07:25 صبح
عزیزم این کار خیلی راحته و شما میتونید با دستور زیر این کارو انجام بدی
("")combo1.items.add

h_a_m_i_d
پنج شنبه 10 شهریور 1390, 07:28 صبح
اینم مثال اگر نفهمیدی
با فرض اینکه شما یک text دارید و متنی که میخواهیم اضافه شود به لیست را باید در ان وارد کنیم و زمانی که در button کلیک میکنیم اضافه میشود
button
(combo1.items.add(text1.text

h_a_m_i_d
پنج شنبه 10 شهریور 1390, 07:31 صبح
برای سوالی هم که کرده بودین شما میتونین از کلید enter برای این عمل به جای button استفاده کنید و دستور زیر را در ان بنویسید
(combo1.items.add(combo1.text

oliya24
پنج شنبه 10 شهریور 1390, 14:44 عصر
دوست من از شما متشکرم که توجه کردید ولی منظورم این نبود که یه تکس باکس بگزارم و بعد تو یه دکمه این کد رو بنویسم
منظورم این بود که تمام این کارها در خود combo انجام بگیره
یعنی در اون بنویسم و همون موقع ذخیره بشن
اگر کمکم کنی جدا ممنونتم
ولی بازم ممنون که توجه کردی

ArashRoshan
پنج شنبه 10 شهریور 1390, 15:04 عصر
سلام این کد رو به برنامت اضافه کن ، هروقت داخل Combo یه چیزی بنویسی و Enter بزنی ، به لیست اضافه می شه .

Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
If e.KeyChar = Chr(13) Then
ComboBox1.Items.Add(ComboBox1.Text)
End If
End Sub

oliya24
پنج شنبه 10 شهریور 1390, 17:02 عصر
دست شما درد نکنه کد تون رو تست کردم به مقصودم رسیدم یه سوال داشتم در مورد این قطعه کدی که دادید اگر محبت کنید و کمکم کنید سپاسگزارتونم
if e. kychar=chr(13)
میشه این رو تشریح کنید من زیاد با این کد رو به رو شدم اما معناش رو نمیدونم

ArashRoshan
پنج شنبه 10 شهریور 1390, 21:08 عصر
سلام
اولین بخش این دستور شرطی (e.keychar) :

شما هروقت در یک تکس باکس یا کمبو باکس یا هر چیز دیگه چیزی می نویسید رویداد Keypress اجرا میشه ، که شما می تونید با دستور e.keychar کد اسکی دکمه ی فشار داده شده را بدست بیارید .

در یک برنامه یک تکس باکس بذارید (textbox1) بعد داخل رویداد keypress دستور زیر رو وارد کنید :

Textbox1.text = e.keychar

الان یه برنامه نوشتید که هر چیزی داخل تکس باکس بنویسید کد اسکی اون کاراکتر دوباره داخل تکس باکس نمایش داده میشه !!

دومین بخش دستور شرطی (Chr(13 :

حالا شما در برنامه ای که بالا نوشتید دکمه ی Enter رو بزنید میبینید خروجی برابر 13 میشه ، حالا ما برای فهمیدن دکمه ای که فشار داده شده از (Chr(13 استفاده می کنیم (عدد 13 کد اسکی Enter است) .

کد شرطی هم میگه اگر دکمه ی فشار داده شده برابر Enter بود دستورات رو اجرا کنه .

امیدوارم متوجه شده باشی .

oliya24
جمعه 11 شهریور 1390, 00:06 صبح
دوست عزیز از اینکه توجه داشتید متشکرم و از توضیحاتی هم که دادید همین طور به یه مشکل برخوردم اگر میشه یه راهنمایی به بنده بکنید وقتی در کمبو باکس تکست مورد نظر را مینویسم و بعد دکمه enter را میزنم متنبی رو که نوشتم هنوز در کمبو میماند یعنی بعد از زدن enter پاک نمیشه من سعی کردم که یه کدی بنویسم که این مشکل حل بشه ولی اصلا متدی به نام cleare وجود نداشت شما میدونید که اشکال از کجاست؟؟؟؟؟

alimanam
جمعه 11 شهریور 1390, 00:30 صبح
با سلام

Public Class Form1

Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
If e.KeyChar = Chr(13) Then
ComboBox1.Items.Add(ComboBox1.Text)
ComboBox1.Text = ""
End If
End Sub

End Class

موفق باشید ./

oliya24
جمعه 11 شهریور 1390, 00:38 صبح
از شما دوستان عزیز کمال تشکر را دارم