Вниз
Скачать: CL | DM;

ListBox и DrawText   Найти похожие ветки 

← →
Sonic90   (2008-01-12 22:47) [0]

Здраствуйте!Проблема вот в чём,я отрисовываю текст в ЛистБоксе используя функцию DrawText,а как получить текст всех отрисованых строк и записать их к примеру в TStrings?


← →
KilkennyCat ©   (2008-01-13 01:17) [1]

Встречный вопрос со встроенным ответом: а где текст хранится в листобксе где?


← →
Leonid Troyanovsky ©   (2008-01-13 01:21) [2]


> Sonic90   (12.01.08 22:47)  

> используя функцию DrawText,а как получить текст всех отрисованых
> строк и записать их к примеру в TStrings?

К примеру, записать их в TStringList после/перед рисованием.

--
Regards, LVT.


← →
Leonid Troyanovsky ©   (2008-01-13 01:31) [3]


> KilkennyCat ©   (13.01.08 01:17) [1]

> где текст хранится в листобксе где?

В Вологде?

--
Regards, LVT.


← →
KilkennyCat ©   (2008-01-13 01:31) [4]


> Leonid Troyanovsky ©   (13.01.08 01:21) [2]


Забавно. Ответ мастера.
А ListBox.Items - это просто так сделали?


← →
Leonid Troyanovsky ©   (2008-01-13 01:33) [5]


> KilkennyCat ©   (13.01.08 01:31) [4]

> А ListBox.Items - это просто так сделали?

Наивный.

--
Regards, LVT.


← →
MsGuns ©   (2008-01-13 01:48) [6]

Включив телепатор, делаю предположение, что автора интересуют только видимые строки листбокса


← →
Германн ©   (2008-01-13 01:48) [7]


> KilkennyCat ©   (13.01.08 01:31) [4]
>
>
> > Leonid Troyanovsky ©   (13.01.08 01:21) [2]
>
>
> Забавно. Ответ мастера.
> А ListBox.Items - это просто так сделали?
>

А какое отношение имеет текст выводимый WinAPI функцией в каком-то hDC к ListBox.Items?


← →
Германн ©   (2008-01-13 01:51) [8]


> MsGuns ©   (13.01.08 01:48) [6]
>
> Включив телепатор, делаю предположение, что автора интересуют
> только видимые строки листбокса
>

А что? В нём есть и "невидимые"?


← →
KilkennyCat ©   (2008-01-13 01:52) [9]

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
  drawtext(listbox1.Canvas.Handle, pchar(listbox1.Items.Strings[index]), length(listbox1.Items.Strings[index]), rect, 1);
end;

это наивно навскидку.


> Германн ©   (13.01.08 01:48) [7]


а для чего собственно, вообще использовать в таком случае ЛистБокс?


← →
Leonid Troyanovsky ©   (2008-01-13 10:30) [10]


> KilkennyCat ©   (13.01.08 01:52) [9]

> а для чего собственно, вообще использовать в таком случае
> ЛистБокс?

Случаи разные бывают.
См. LBS_HASSTRINGS.

--
Regards, LVT.


← →
KilkennyCat ©   (2008-01-13 11:20) [11]


> Leonid Troyanovsky ©   (13.01.08 10:30) [10]


Имеется ввиду отсутствие оного?


← →
Leonid Troyanovsky ©   (2008-01-13 11:42) [12]


> KilkennyCat ©   (13.01.08 11:20) [11]

> Имеется ввиду отсутствие оного?

Да.

Кроме того, owner-drawn листбоксы могут содержать пустые строки,
что до появления стилей lbVirtual довольно часто использовалось.

--
Regards, LVT.


← →
KilkennyCat ©   (2008-01-13 11:48) [13]


> Leonid Troyanovsky ©   (13.01.08 11:42) [12]
>
>


отлично. ну тогда я выкидываю свой телепатор. раз автор выкидывает хэзстринг, который по умолчанию есть, значит он работает ну с очень достаточно большим объемом данных, и где он их перед этим хранит фиг знает... и при этом получаем полный винапи... да еще и вопрос так поставлен, что просто один вариант прочтения, что автору хитрое выравнивание понадобилось...

за "наезд" в [4] приношу извинения.



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.018 c
2-1198340668
Reals
2007-12-22 19:24
2008.02.03
Определить серийный номер материнки (или чипсета)


2-1200053064
Farel
2008-01-11 15:04
2008.02.03
Подсети


15-1198911358
VAD*Anti Gopn!k
2007-12-29 09:55
2008.02.03
Электрогитара и компьютер.


11-1183576848
=BuckLr=
2007-07-04 23:20
2008.02.03
OnRE_URLClick правой мышью


15-1198671211
Alkid
2007-12-26 15:13
2008.02.03
Фрактальная размерность множества




   Наверх