Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Вниз

Как сделать не сортированный 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.041 c
4-1095753422
Дима
2004-09-21 11:57
2004.10.24
Выключение питания


3-1096382597
_Vovan_
2004-09-28 18:43
2004.10.24
Как создать вторичный индекс Paradox-таблицы по убыванию на SQL?


14-1096750207
Поручик
2004-10-03 00:50
2004.10.24
Помогите найти


6-1092720965
serg128
2004-08-17 09:36
2004.10.24
Как принимать/отправлять сообщения при помощи TNMUDP?


14-1096920754
pipll
2004-10-05 00:12
2004.10.24
Задача на общую программистскую логику





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский