دوستان سلام
چطور می شه با کلیک برروی یکی از ایتمهای یک کامبو باکس اطلاعات مربوط به ان ایتم در یک کامبوباکس دیگه ظاهر بشه مثلا با انتخاب یک استان شهرستانهای متناظر با ان در کامبوباکس دیگه در دسترس قرار بگیره
دوستان سلام
چطور می شه با کلیک برروی یکی از ایتمهای یک کامبو باکس اطلاعات مربوط به ان ایتم در یک کامبوباکس دیگه ظاهر بشه مثلا با انتخاب یک استان شهرستانهای متناظر با ان در کامبوباکس دیگه در دسترس قرار بگیره
بيشتر توضيح بده
اگه برنامه ات ديتابيس بگو تا حل كنيم
با سلام خدمت دوستان.
دوست عزیز برای این کار می توان این طور عمل کرد. طبیعتا شما در بانک اطلاعاتی خود یک ستون برای استان دارید و یک ستون برای شهرستان. خوب می توان در قسمت onchange کمبو باکس اول از دستور locate استفاده کرد و مقادیره فیلد شهرستان رکورد هایی که برابر استان انتخاب شده هستند را به combobox دوم اضافه کند.
امید وارم که به دردت بخورد.
Last edited by soltanmahdi; 30-01-2007 at 07:29.
اگه از ديتا بيس استفاده مي كني جداول رو Master/Slave كن
سلام
فرض
یه جدول داریم 3 تا فیلد داره
ID و State و City
حالا دو تا ComboBox و دو تا ADOTable و یه دونه ADOConnection1
دوتا ADOTable ها به جدول مون وصل هستن
روی فرم بذار و کارا زیر رو انجام بده
توی FormCreate در form
توی Select در ComboBox1ADOTable1.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 رو به فیلدی که بین دو تا جدوب مشترک هست یمثلا کد استان که در جدول شهرستانها نیز باید باشد(از نظر طراحی دیتابیس یه رابطه باید بین استانهاو شهرستانها برقرار باشد که همان کد استانها در جدوب شهرستانها است)
حالا هررکوردی که از جدول استانها فال (رکورد جاری) باشه فقط شهرستانهای همون استاد در جدول شهرستانها قرار میگیره
یعنی یه جور اتوماتیک فیلتر میکنه
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)