![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отоброзить TStringList на экране. [D7]
Pavia © (2010-02-28 12:43:00)Как правильно и быстро отобразить TStringList?
Ужас. вот такие вот результаты.
ListBox1.Items:=ListAns; // 22 секунды
Memo1.WordWrap:=True; //20 секунд
Memo1.Lines:=ListAns;
Memo1.WordWrap:=False; //17 секунд
Memo1.Lines:=ListAns;
Не хочу изобретать велосипед. Поэтому ищу стандартное решение. Или готовый компонент.
Anatoly Podgoretsky (2010-03-01 12:53:00) [1]> Leonid Troyanovsky (01.03.2010 12:23:11) [11]
Понял, чтобы не хранить.
Leonid Troyanovsky (2010-03-01 12:23:00) [2]
> Anatoly Podgoretsky © (01.03.10 12:07) [10]
> А почему не наследника TStringGrid?
А чтоб только показывать. Ну, и редактировать, если надо.
С хранением, вроде, определились.
--
Regards, LVT.
Anatoly Podgoretsky (2010-03-01 12:07:00) [3]
> TDrawGrid.
А почему не наследника TStringGrid?
Leonid Troyanovsky (2010-03-01 12:01:00) [4]
> Pavia © (28.02.10 12:43)
> Как правильно и быстро отобразить TStringList?
TDrawGrid.
--
Regards, LVT.
Игорь Шевченко (2010-03-01 03:21:00) [5]Автор, тебе нельзя помочь.
sniknik (2010-02-28 16:05:00) [6]> А больше одного слова написать слабо?
это как раз то -
> ищу стандартное решение. Или готовый компонент.
стандартный, готовый компонент. с разделением данных от их отображения.
p.s. 13 слов включая предлоги и исключая эту фразу. хватит?
Pavia (2010-02-28 15:38:00) [7]
> lhelperl (28.02.10 12:56) [1]
22с.
> sniknik © (28.02.10 13:04) [2]
А больше одного слова написать слабо?
> Palladin © (28.02.10 13:53) [3]
О уже лучше 1.3 с запомню.
> Loginov Dmitry © (28.02.10 14:35) [4]
Спасибо друг. То что нужно.
DVM (2010-02-28 15:34:00) [8]
> Pavia © (28.02.10 12:43)
> Как правильно и быстро отобразить TStringList?
TListView плюс виртуальный режим. Неважно сколько элементов в листе - отображение мгновенно.
Loginov Dmitry (2010-02-28 14:35:00) [9]
> Как правильно и быстро отобразить TStringList?
>
> Ужас. вот такие вот результаты.
>
> ListBox1.Items:=ListAns; // 22 секунды
TListBoxStyle + F1
ListBox1.Style := lbVirtual;
ListBox1.Count := ListAns.Count;
procedure TForm1.ListBox1Data(Control: TWinControl; Index: Integer;
var Data: String);
begin
Data := ListAns[Index];
end;
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
TListBox(Control).Canvas.FillRect(Rect);
TListBox(Control).Canvas.TextOut(Rect.Left, Rect.Top, ListAns[Index]);
end;
Palladin (2010-02-28 13:53:00) [10]Memo1.Lines.Text := ListAns.Text;
sniknik (2010-02-28 13:04:00) [11]TDBListBox
lhelperl (2010-02-28 12:56:00) [12]
with ListBox1 do
begin
Items.BeginUpdate;
for i := 0 to ListAns.Count - 1 do
Items.Add(ListAns[i]);
Items.EndUpdate;
end;
Сколько времени занимает? Какой объем у ListAns?