دوستان سلام
چطور می شه با کلیک برروی یکی از ایتمهای یک کامبو باکس اطلاعات مربوط به ان ایتم در یک کامبوباکس دیگه ظاهر بشه مثلا با انتخاب یک استان شهرستانهای متناظر با ان در کامبوباکس دیگه در دسترس قرار بگیره
Printable View
دوستان سلام
چطور می شه با کلیک برروی یکی از ایتمهای یک کامبو باکس اطلاعات مربوط به ان ایتم در یک کامبوباکس دیگه ظاهر بشه مثلا با انتخاب یک استان شهرستانهای متناظر با ان در کامبوباکس دیگه در دسترس قرار بگیره
بيشتر توضيح بده
اگه برنامه ات ديتابيس بگو تا حل كنيم
با سلام خدمت دوستان.
دوست عزیز برای این کار می توان این طور عمل کرد. طبیعتا شما در بانک اطلاعاتی خود یک ستون برای استان دارید و یک ستون برای شهرستان. خوب می توان در قسمت onchange کمبو باکس اول از دستور locate استفاده کرد و مقادیره فیلد شهرستان رکورد هایی که برابر استان انتخاب شده هستند را به combobox دوم اضافه کند.
امید وارم که به دردت بخورد.
اگه از ديتا بيس استفاده مي كني جداول رو Master/Slave كن
سلام
فرض
یه جدول داریم 3 تا فیلد داره
ID و State و City
حالا دو تا ComboBox و دو تا ADOTable و یه دونه ADOConnection1
دوتا ADOTable ها به جدول مون وصل هستن
روی فرم بذار و کارا زیر رو انجام بده
توی FormCreate در form
توی Select در ComboBox1نقل قول:
ADOTable1.First;
while not(ADOTable1.Eof) do
begin
if (ComboBox1.Items.IndexOf(ADOTable1.FieldValues['State'])=-1)or(ComboBox1.Items.Count=0) then
ComboBox1.Items.Add(ADOTable1.FieldValues['State']);
ADOTable1.Next;
end;
چند تا نکتهنقل قول:
ComboBox2.Clear;
ADOTable2.Filter:='State='+ComboBox1.Text;
ADOTable2.First;
while not(ADOTable2.Eof) do
begin
ComboBox2.Items.Add(ADOTable2.FieldValues['City']);
ADOTable2.Next;
end;
ComboBox1 نا استانها
ComboBox2 نام شهر ها
ComboBox2.Clear; رو پاک کن ببین چه گندی بالا می آد
شرط if یرای این که نام استان تکراری وارد نشه
اگه من بودم از ADOQuery استفاده می کردم
Filter مربوط به ADOTable رو فعال کن
اگه مشکلی بود در خدمتم البته اگه بتونم
اگه خواستی بگو تا فایل رو برات یه جا آپلود کنم
جناب mahdi bg
دليل اينكه از Slave/Master استفاده نم كنيد چيه؟
اينهمه كد نويسي و كنترل تازه اونم ممكنه خطا داشته باشه
سلام
این که میگین Slave/Master دقیقا یعنی چی؟
من خیلی این کلمه رو دیدم اما نمی دونم منظورتون
چیه و با چیزی که من به این اسم می شناسم یکیه یا نه.
این کد ها رو میشه به 2-3 خط هم نوشت
برای این که قابل فهم باشه با تفضیل نوشتم
با يه ارتباط ساده متر ديتيل از كدهاي اضافه جلوگيري كنيد
سلام
مثلا برای سوال که مطرح شده با مستر ديتيل چطوری جواب داده میشه؟نقل قول:
میشه برنامه ای که می نویسید رو یه جا آپلود کنید
ممنون
ببینید شما دوتا table دارین و دوتا datasource که به تیبلها نسبت دادین
خاصیت MasterSource جدول شهرستانهای استان رو به datasource استانها تنظیم میکنید
و خاصیت MasterFields رو به فیلدی که بین دو تا جدوب مشترک هست یمثلا کد استان که در جدول شهرستانها نیز باید باشد(از نظر طراحی دیتابیس یه رابطه باید بین استانهاو شهرستانها برقرار باشد که همان کد استانها در جدوب شهرستانها است)
حالا هررکوردی که از جدول استانها فال (رکورد جاری) باشه فقط شهرستانهای همون استاد در جدول شهرستانها قرار میگیره
یعنی یه جور اتوماتیک فیلتر میکنه
سلام
OKنقل قول:
این چیزی که شما میگی.
من فقط برای دوستمون یه کد نوشتم که یه
Combobox رو با یه combobox انتخاب کنه
اين روش مزيتش اينه كه شما هر DataControl رو ميتوني كنترل كنينقل قول:
من فقط برای دوستمون یه کد نوشتم که یه
Combobox رو با یه combobox انتخاب کنه
مثلا DataGrid از اين روش براي نشون دادن اطلاعات Detail اسفاده ميشه