Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2014, 17:07   #11
tarakan1983
Форумчанин
 
Аватар для tarakan1983
 
Регистрация: 09.09.2008
Сообщений: 418
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Это проще , но дольше

PS

Кстати, с днем рождения!
спасибо!!!!!!!!!
tarakan1983 вне форума Ответить с цитированием
Старый 18.10.2014, 10:10   #12
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Советую аффтару не страдать говнокодингом и заюзать стайл csOwnerDrawFixed. Подарю православную самодельную функцию центрирования текста в прямоугольной области по горизонтали и вертикали.
Код:
// Начальная точка вывода текста на канве внутри прямоугольника Rect
// с выравниванием горизонтальным и вертикальным
function GetTextPosition(const Text: string;                 // текст
                         const Canvas: TCanvas;              // канва
                         const Rect: TRect;                  // прямоугольник отрисовки
                         const TextMargin: Integer;          // размер полей
                         const Alignment: TAlignment;        // гориз. выравнивание
                         const Layout: TTextLayout): TPoint; // верт. выравнивание
var
  th, tw: Integer;
begin
  tw:= Canvas.TextWidth(Text);
  th:= Canvas.TextHeight(Text);

  case Alignment of
    taLeftJustify  : Result.x:= TextMargin;
    taCenter       : Result.x:= ((Rect.Right - Rect.Left) div 2) - (tw div 2);
    taRightJustify : Result.x:= (Rect.Right - Rect.Left) - tw - TextMargin;
  end; //case

  case Layout of
    tlTop:    Result.y:= TextMargin;
    tlCenter: Result.y:= ((Rect.Bottom - Rect.Top) div 2) - (th div 2);
    tlBottom: Result.y:= (Rect.Bottom - Rect.Top) - th - TextMargin;
  end; // case
end;
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
текст по центру по высоте внутри Diva johny_03 HTML и CSS 2 31.01.2013 13:59
Как разместить текст внизу страницы по центру Vitalik85 HTML и CSS 9 10.08.2012 14:32
Тег SELECT - выровнять текст по центру (IE) Linel HTML и CSS 0 17.02.2011 13:35
Не могу сделать текст по центру pahanzona Общие вопросы Delphi 3 05.02.2011 12:37
Выровнять текст в Стринг Грид по центру cowboy Общие вопросы Delphi 1 25.04.2010 13:03