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

Вниз

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

 
markers ©   (2006-03-01 23:20) [0]

Здраствуйте!
Как можно сделать пункты ListView в режиме List, по центру?
Заранее спасибо!


 
Джо ©   (2006-03-02 00:16) [1]

Установить OwnerDraw в True и в обработчике события OnDrawItem самому отрисовывать элементы.


 
markers ©   (2006-03-02 00:19) [2]

Мне нужна формула вычесления.


 
markers ©   (2006-03-02 00:24) [3]

А как избавиться от "Новые поступ..."?


 
markers ©   (2006-03-02 00:24) [4]

Только через OwerDraw?


 
Джо ©   (2006-03-02 00:39) [5]

> [3] markers ©   (02.03.06 00:24)
> А как избавиться от "Новые поступ..."?

Что это такое?


 
Джо ©   (2006-03-02 00:40) [6]

> [2] markers ©   (02.03.06 00:19)
> Мне нужна формула вычесления.

Очень рад.


 
markers ©   (2006-03-02 00:42) [7]

>> [3] markers ©   (02.03.06 00:24)
>> А как избавиться от "Новые поступ..."?

>Что это такое?
!ListView "сокращает" имя item`a Мне нужно чтоб было полно...

Уже впринцепи решил....
И формулу впринцепи придумал, но если будут предложения, буду рад.


 
Джо ©   (2006-03-02 00:44) [8]

> [7] markers ©   (02.03.06 00:42)
> Уже впринцепи решил....
> И формулу впринцепи придумал, но если будут предложения,
> буду рад.

Если ты уже сам все, в принципе, решил — то каких предложений ты ждешь и зачем вообще просишь помощи на форуме?


 
markers ©   (2006-03-02 00:53) [9]

Просто у меня есть сейчас идеи, я может смогу их воплатить, а может и нет. А время идёт, может за это время что-то предложет ещё лучше чем я придумал.


 
markers ©   (2006-03-02 01:05) [10]

Что-то у меня маленько не получаеться сделать Itemы по центру, мой алгоритм слудующий:
"
Получаем ширину бокса
Делем пополам и даем всем поровну :)
Измеряем размер текста каждой ячейки
От половинки бокса отнимаем размер текста ячейки
Делем его пополам и добавляем по половинке пустоты к каждой стороне
"
Поправьте меня пожалуйста если что?


 
markers ©   (2006-03-02 01:06) [11]

Попраки:
... следующий
не бокс а ListView
Ссори.


 
markers ©   (2006-03-02 01:59) [12]

Если кому интересно:
specname & newp = переменные с текстами
var
 DLT1:Integer;
 DLT2:Integer;
 DLT3:Integer;

function InsertSpace(Count:Integer):String;
var i:integer;
begin
Result:="";
for i:=TListView(Sender).Canvas.TextWidth(Result) to Count do
 begin
  Result:=Result+" ";
 end;
end;

begin
DefaultDraw:=False;
DLT1:=DopCatList.Width div 2;
if Item.Index = 1 Then
begin
 DLT2:=(DLT1-TListView(Sender).Canvas.TextWidth(newpName)) div 2;
 TListView(Sender).Canvas.TextOut(1,2,InsertSpace((DLT2 div 2)-10)+newpName+" "+InsertSpace((DLT2 div 2)-10));
end
else
begin
 DLT2:=(DLT1-TListView(Sender).Canvas.TextWidth(specName)) div 2;
"+specName+" "+InsertSpace(DLT2 div 2));
 TListView(Sender).Canvas.TextOut(DLT1-10,2,InsertSpace((DLT2 div 2)-10)+" "+specName+" "+InsertSpace((DLT2 div 2)-10));
TListView(Sender).Canvas.TextOut(DLT1,2,InsertSpace(DLT2)+specName+InsertSpace(DLT2));
end;
end;


 
REA   (2006-03-02 11:14) [13]

Вывод по центру: SetTextAlign(Canvas.Handle, TA_TOP Or TA_CENTER)


 
StriderMan ©   (2006-03-02 23:27) [14]

ээээ
а по какой причине используется ListView а не ListBox, если все равно элементы отображаются текстом


 
Джо ©   (2006-03-02 23:32) [15]

> [14] StriderMan ©   (02.03.06 23:27)
> ээээ
> а по какой причине используется ListView а не ListBox, если
> все равно элементы отображаются текстом

Это, похоже, Вопрос Вопросов :-) Чем больше я смотрю на варианты сабжевого кода, тем более меня этот вопрос волнует. Ну да ладно.



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

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

Наверх




Память: 0.5 MB
Время: 0.04 c
1-1140058218
Simon
2006-02-16 05:50
2006.03.19
переменные окружения


15-1140422535
syte_ser78
2006-02-20 11:02
2006.03.19
ноутбук 486


15-1140889835
Jimmy
2006-02-25 20:50
2006.03.19
Документация по DirectX


2-1141411870
Mozgan
2006-03-03 21:51
2006.03.19
Как создать свой модуль?


2-1141141601
VitV
2006-02-28 18:46
2006.03.19
Interbase+Delphi+Flash