View Full Version : سوال: چگونه ليست فيلدهاي بانك را در يك ComboBox نشان دهم؟
ali_abbasi22145
چهارشنبه 01 خرداد 1387, 11:39 صبح
سلام
چگونه ليست فيلدهاي بانك SQL Server 2000 را كه با ADO دلفي 7 وصل شده ام ، در يك ComboBox نشان دهم؟
delphiprog3000
چهارشنبه 01 خرداد 1387, 11:52 صبح
سلام دوست عزیز. جناب Syndrome این مسئله رو حل کرده بود ولی متاسفانه تاپیکش رو پیدا نکردم.
این کد رو در OnCreate فرمتان بنویسید.
with ADOQuery1 do
begin
sql.Text:='select * from table1 ;
open;
first;
while not Eof do
begin
ComboBox1.Items.Add(FieldByName('name').AsString); ======> در این قسمت اسم فیلدهای مورد نظر را بنویسید
next;
end;
end;
موفق باشید....................
Mah6447
چهارشنبه 01 خرداد 1387, 11:57 صبح
ComboBox1.Items.Assign(ADOTable1.FieldDefList);
اصغر (پآچ)
چهارشنبه 01 خرداد 1387, 12:51 عصر
برای اینکه بفهمی کدوم فیلد هم انتخاب شده می تونی از این دستور استفاده کنی:
Edit1.Text := Combobox1.Item[Combobox1.ItemIndex]
ali_abbasi22145
چهارشنبه 01 خرداد 1387, 12:59 عصر
ComboBox1.Items.Assign(ADOTable1.FieldDefList);
مرسي دوست من كد جالبي بود ، اما اگر بخواهيم همه فيلدها به غير فيلدهاي "id" , "Title" را در ComboBox بيايد كدش چگونه مي شود؟
Mah6447
چهارشنبه 01 خرداد 1387, 13:12 عصر
، اما اگر بخواهيم همه فيلدها به غير فيلدهاي "id" , "Title" را در ComboBox بيايد كدش چگونه مي شود؟
ابتدا روی AdoTable دابل کلیک کرده , فیلدهایی را که می خواهید به لیست اضافه و سپس از کد زیر استفاده نمایید .
ComboBox1.Items.Assign(ADOTable1.FieldList);
ali_abbasi22145
چهارشنبه 01 خرداد 1387, 13:42 عصر
ابتدا روی AdoTable دابل کلیک کرده , فیلدهایی را که می خواهید به لیست اضافه و سپس از کد زیر استفاده نمایید .
ComboBox1.Items.Assign(ADOTable1.FieldList);
سلام
من كل فیلدهایی بانك را در برنامه مي خواهم نمي توانم كمش كنم.
حال در ComboBox مي خواهم كل فيلدها به غير از id,title باشند ، پس روش شما جواب نمي دهد.
من فكر مي كنم با تغيير كد:( ComboBox1.Items.Assign(ADOTable1.FieldList) مي توان مشكلم را حل كرد.
Mah6447
چهارشنبه 01 خرداد 1387, 13:54 عصر
procedure TForm1.Button1Click(Sender: TObject);
var i:Integer;
begin
for I := 0 to ADOTable1.FieldDefList.Count - 1 do
begin
If (ADOTable1.FieldDefList.Strings[i]<>'id') and
(ADOTable1.FieldDefList.Strings[i]<>'Title') Then
ComboBox1.Items.Add(ADOTable1.FieldDefList.Strings[i]);
end;
end;
Mah6447
چهارشنبه 01 خرداد 1387, 14:37 عصر
چرا از DBComboBox یا DBLookupComboBox استفاده نمی کنی؟!!
منظور دوستمان نام فیلهای جداول می باشد نه اطلاعات داخل آنها
ali_abbasi22145
چهارشنبه 01 خرداد 1387, 15:51 عصر
procedure TForm1.Button1Click(Sender: TObject);
var i:Integer;
begin
for I := 0 to ADOTable1.FieldDefList.Count - 1 do
begin
If (ADOTable1.FieldDefList.Strings[i]<>'id') and
(ADOTable1.FieldDefList.Strings[i]<>'Title') Then
ComboBox1.Items.Add(ADOTable1.FieldDefList.Strings[i]);
end;
end;
سلام
بي نهايت متشكر دوست عزيز مشكل حل شد!
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.