Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Как сделать не сортированный TStringList или TStrings   Найти похожие ветки 

 
Галинка ©   (2004-10-12 14:12) [0]

Вот в чем собственно проблема.

procedure TMDBSelectDlg.ListBox1Click(Sender: TObject);
var
i,k:integer;
FieldsNames:TStringList;
begin
k:=0;
FieldsNames:=TStringList.Create;
  for i:=0 to ListBox1.Items.Count-1 do
   If ListBox1.Selected[i] then
    begin
     inc(k);
     SetLength(TablesNames,k);
     TablesNames[k-1]:=ListBox1.Items.Strings[i];
    end;
  ListBox2.Clear;
  for i:=0 to k-1 do
   begin
    FieldsNames.CaseSensitive:=false;
    FieldsNames.Sorted:=true;
    Form1.Connection.GetFieldNames(TablesNames[i],FieldsNames);
    ListBox2.Items.AddStrings(FieldsNames);
   end;
FieldsNames.Free;
end;

Так вот эта конструкция выдает поля в отсортированном виде, а мне надо так как они в таблицах идут. Это принципиально. Потому как потом ДБГриды я связываю по ходу столбцов.

Заранее спасибо всем, кто ответит...)))


 
Ega23 ©   (2004-10-12 14:15) [1]

FieldsNames.Sorted:=true;

Тебе это о чём-нибудь говорит???


 
Amoeba ©   (2004-10-12 14:16) [2]

А зачем в коде нужно вот это?
FieldsNames.Sorted:=true;


 
Галинка ©   (2004-10-12 14:24) [3]

Убрала я FieldsNames.Sorted:=true;, все равно сортированный...


 
Ega23 ©   (2004-10-12 14:25) [4]

for i:=0 to Fiels.Count-1 do
Strings.add(Fields[i].FieldName)       ?


 
=SOFT=   (2004-10-12 14:25) [5]

Попробуй так FieldsNames.Sorted:=false; говорят помогает :)


 
Галинка ©   (2004-10-12 14:37) [6]

Для Ega23:
У меня имена полей узнаются, теоретически, до того как я узнаю имена нужных таблиц, так, что через Тэйблы связываться, слишком сложно, по-моему...


 
Галинка ©   (2004-10-12 14:39) [7]

procedure TMDBSelectDlg.ListBox1Click(Sender: TObject);
var
i,k:integer;
FieldsNames:TStringList;
begin
k:=0;
FieldsNames:=TStringList.Create;
FieldsNames.CaseSensitive:=false;
FieldsNames.Sorted:=false;
  for i:=0 to ListBox1.Items.Count-1 do
   If ListBox1.Selected[i] then
    begin
     inc(k);
     SetLength(TablesNames,k);
     TablesNames[k-1]:=ListBox1.Items.Strings[i];
    end;
  ListBox2.Clear;
  for i:=0 to k-1 do
   begin
    FieldsNames.CaseSensitive:=false;
    Form1.Connection.GetFieldNames(TablesNames[i],FieldsNames);
    ListBox2.Sorted:=false;
    ListBox2.Items.AddStrings(FieldsNames);
   end;
FieldsNames.Free;
end;
Что еще не так? А Все равно сортирует...


 
begin...end ©   (2004-10-12 14:41) [8]

Наверное, в ListBox1 уже отсортировано ;-)


 
Ega23 ©   (2004-10-12 14:42) [9]

У меня имена полей узнаются, теоретически, до того как я узнаю имена нужных таблиц, так, что через Тэйблы связываться, слишком сложно, по-моему...

Это, пардон, как?


 
Ega23 ©   (2004-10-12 14:43) [10]

И, кстати, про TTable я ничего не говорил. Вообще, ИМХО, вредный компонент. Никогда не использую.


 
Галинка ©   (2004-10-12 14:49) [11]

Для begin...end: но  ListBox2.Sorted:=false;
Для Ega23: Во-первых, я через АДО работаю. Там через коннекшн все это узнается... А если не Тэйбл, то тогда Fields.Count чего?


 
Ega23 ©   (2004-10-12 14:57) [12]

А если не Тэйбл, то тогда Fields.Count чего?

Гм. По-моему ты не понимаешь, что первично, а что - вторично.
У TDataSet, конечно же, у кого же ещё?
И, кстати, TADOConnection - где ты там всё это узнаёшь?


 
Галинка ©   (2004-10-12 15:03) [13]

Для Ega23: ADOConnection.GetFieldNames(TablesNames[i],FieldsNames);


 
begin...end ©   (2004-10-12 15:05) [14]


> [11] Галинка ©   (12.10.04 14:49)


> но  ListBox2.Sorted:=false;

Ну и что? Ты думаешь, если отсортированный список загнать в ListBox, у которого Sorted = False, то элементы случайным образом будут располагаться?


 
Галинка ©   (2004-10-12 15:11) [15]

Для begin...end:
FieldsNames:=TStringList.Create;
FieldsNames.CaseSensitive:=false;
FieldsNames.Sorted:=false;


&
ListBox2.Sorted:=false;
ListBox2.Items.AddStrings(FieldsNames);



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.022 c
1-1097511312
пионер
2004-10-11 20:15
2004.10.24
Ошибка при чтении двочных данных из реестра


1-1097351371
Алексей
2004-10-09 23:49
2004.10.24
Узнать какой объект создал событие


9-1087948839
Алекс А
2004-06-23 04:00
2004.10.24
GLScene овский редактор ODE: Как можно из него сохранять модели ?


1-1097133565
Leksiy
2004-10-07 11:19
2004.10.24


8-1090839293
goliath
2004-07-26 14:54
2004.10.24
TDrawing