PDA

View Full Version : غیر فعال کردن یک فیلد در یک فرم، با توجه به مقدار یک Combobox



kami2266
چهارشنبه 14 تیر 1385, 14:57 عصر
سلام،
من بازم مزاحم شما برنامه نویسا شدم. I'm so sorry
من توی یه فرم یه Combobox دارم که می خوام اگه کابر از لیست اون مثلاً کلمه "فرم" رو انتخاب کرد، یه Textbox که توی همون فرم هست غیر فعال بشه و کابر نتونه توی اون چیزی وارد کنه، ولی اگه از همون Combobox کلمه "روش اجرایی" رو انتخاب کرد اون Textbox فعال باشه.
با تشکر قبلی:
کامی. :متفکر:

شاپرک
چهارشنبه 14 تیر 1385, 15:01 عصر
Event After Update مربوط به کمبو


if ComboName= "فرم" then
TextName.Enabled = false
elseif Combo="روش اجرایی " then
TextName.Enabled=true
end if

mohammadgij
چهارشنبه 14 تیر 1385, 16:06 عصر
می تونی از دستور Select هم استفاده کنی




ُSelect Case Me.ComboName.value
Case "فرم"
Me.TextName.Enabled=False
Case "روش اجرایی"

Me.TextName.Enabled=True
End Select

kami2266
چهارشنبه 14 تیر 1385, 19:59 عصر
ممنون، امتحانشون می کنم.

kami2266
چهارشنبه 14 تیر 1385, 20:49 عصر
2 باره سلام،
من راه خانوم شاپرک رو رفتم 3 تا مشکل داشت:
1. اگر "فرم" رو انتخاب می کردم غیر فعال می شد ولی 2 باره با انتخاب "روش اجرایی" فعال نمی شد.
2.در صفحه بعدی فرم (وهمه صفحات) هم اون textbox غیر فعال بود.
3. با اجرای دوباره فرم 2باره همه ی textboxها فعال بود.

mohkhosh
پنج شنبه 15 تیر 1385, 06:55 صبح
اگر می خواهی بعد از برقراری شرط در همه فرمها بعدی کاری انجام بدی فرم اول که combo box شرطی توی اونه باید باز باشه(minimize)و در on open فرمهای بعدی بنویسی اگر درفرم فلان کمبوی موردنظر برابر با فلان بود این کار را انجام بده اگرنه چه و الی آخر ....

mohammadgij
پنج شنبه 15 تیر 1385, 10:14 صبح
شما اگه می خوای وقتی این فیلد رو ست کردی هر وقت دیگه که فرم اجرا میشه و به این رکورد میرسه باز هم فیلد مورد نظرت Enabled=False بشه باید همین دستور رو در رویداد On Current مربوط به فرم بنویسی یا در OnCurrent فرم After Update فیلد مورد نظر رو Call کنی

شاپرک
پنج شنبه 15 تیر 1385, 10:45 صبح
ممکنه نحوه تایپ "روش اجرایی" اشتباه باشه .
اگه کمبو باکست فقط همین دوتا مقدار رو داره و ثابته از خاصیت List index کمبو استفاده کنی .یعنی بگی :


if Combo.Listindex =0 then 'اولین مقدار کمبو "فرم"
Me.TextName.Enabled=False
elseif Combo.Listindex =1 then
Me.TextName.Enabled=True
end if

emami.sie
چهارشنبه 15 آبان 1387, 11:08 صبح
Event After Update مربوط به کمبو


if ComboName= "فرم" then
TextName.Enabled = false
elseif Combo="روش اجرایی " then
TextName.Enabled=true
end if


میشه یه نفر روی نمونه ای که من گذاشتم این کارو انجام بده...
نمی دونم چرا نمی شه...
به هر حال ممنون

emami.sie
پنج شنبه 16 آبان 1387, 10:15 صبح
میشه یه نفر روی نمونه ای که من گذاشتم این کارو انجام بده...
نمی دونم چرا نمی شه...
به هر حال ممنون

دوستان کسی کمک نمی کنه؟؟؟
فایل ضمیمه زیر طبق چیزیه که دوستان گفتند...
ولی نمی شه...
ممنون

amirzazadeh
پنج شنبه 16 آبان 1387, 12:08 عصر
دوستان کسی کمک نمی کنه؟؟؟
فایل ضمیمه زیر طبق چیزیه که دوستان گفتند...
ولی نمی شه...
ممنون
كد هاتون رو به اين شكل جايگزين كنين

If Me!name = "1" Then
Me!famil.Enabled = False
ElseIf Me!name = "2" Then
Me!famil.Enabled = True
End If
....................
موفق باشيد

emami.sie
پنج شنبه 16 آبان 1387, 12:32 عصر
كد هاتون رو به اين شكل جايگزين كنين

If Me!name = "1" Then
Me!famil.Enabled = False
ElseIf Me!name = "2" Then
Me!famil.Enabled = True
End If
....................
موفق باشيد

با تشکر از شما...
ببنید حالا من می خوام با انتخاب یک فیلد دو یا چند فیلد دیگه غیر فعال بشه... حالا باید چیکار کنم؟؟؟
البته ببخشید که با این سئوال های ابتدایی وقت شما رو می گیرم، ولی متاسفانه توی کد نویسی فعلا خیلی ضعیفم ولی باید یه جوری کارمو راه بندازم...
ممنون

amirzazadeh
شنبه 18 آبان 1387, 08:35 صبح
با تشکر از شما...
ببنید حالا من می خوام با انتخاب یک فیلد دو یا چند فیلد دیگه غیر فعال بشه... حالا باید چیکار کنم؟؟؟
البته ببخشید که با این سئوال های ابتدایی وقت شما رو می گیرم، ولی متاسفانه توی کد نویسی فعلا خیلی ضعیفم ولی باید یه جوری کارمو راه بندازم...
ممنون
دوست من هيچ فرقي نميكنه شما بايد به تعداد فيلد هاي مورد نظر كد اضافه كنين .

Me!yourfieldname.Enabled = False
.................................
موفق باشيد