Программы   Загрузка Партнерство   О компании Контакты  
 
                    
  Карта Сайта   
   





Выравнивание в ListBox

Перед тем, как вычислить позицию фразы, необходимо с помощью функции TextWidth вычислить ее ширину.


var
  J, TempInt, LongPrefixLen, CurrPrefixLen: Integer;
begin
  {Вычисляем TextWidth по ключевой строке}
  {Устанавливаем CurrPrefixLen в TextWidth ключевого слова
  строки Indexth}
  LongPrefixLen := 0;
  for J := 0 to ListBox1.Items.Count - 1 do
    with ListBox1.Canvas do
    begin
      TempInt := TextWidth(Copy(Items[J], 1, Pos(KeyString, Items[J] - 1)));
      if LongPrefixLen < TempInt then
        LongPrefixLen := TempInt;
      if J = Index then
        CurrPrefixLen := TempInt;
    end;
  {PrevTextLeft - TextLeft = Где мы хотим вывести новый элемент}
  TextOut(LongPrefixLen - CurrPrefixLen, Y, Items[I]);
end;

           




Программы  |  Загрузка  |  Партнерство  |  О компании  |  Контакты

Copyright © LSD Software 2006 - 2011