Ширина в пикселях текста/подписи в Delphi 7

Я был снова выигрывающим, снова проигрывающим пользователем энергии в течение лет (выполнение случайного sys администраторского задания). Я просто недавно начал проводить больше времени, делая мою работу программирования в нем. Я предложил бы запуститься с gvim также. Это интегрируется хорошо с большинством сред ОС, и (еще лучше), можно отступить к мыши, когда Вы должны:).

Для начинаний с энергией, пробегает vimtutor (связанный gVim) несколько раз (занимает приблизительно один час). Я не могу преувеличить, насколько полезный это было для меня! Особенно первые части о различных способах переместиться через документ, и как действия редактирования зарегистрированы с командами движения, и т.д., и т.д. После этого, вещи, будут НАМНОГО более ясными.

Затем начните делать быстрые, незначительные редактирования с ним (материал замены блокнота), 'пока Вы не будете достаточно удобны, чтобы сделать полезное редактирование в быстром клипе. Тогда попытайтесь делать свою ежедневную работу в нем. Вы будете тосковать по "повторению последнее действие" команда в других редакторах в мгновение ока!

11
задан dan-gph 14 September 2012 в 00:19
поделиться

2 ответа

Вы можете использовать функции Canvas.TextWidth и Canvas.TextHeight .

Вариант 1, используя холст элемента управления

WidthInPixels := Label1.Canvas.TextWidth('My Text');

Вариант 2, создание временного холста (с использованием Tbitmap)

Function GetWidthText(const Text:String; Font:TFont) : Integer;
var 
  LBmp: TBitmap; 
begin
  LBmp := TBitmap.Create;
  try
   LBmp.Canvas.Font := Font;
   Result := LBmp.Canvas.TextWidth(Text); 
  finally
   LBmp.Free;
  end;
end;
27
ответ дан 3 December 2019 в 02:30
поделиться

если у вас есть компонент Delphi, имеющий свойство «Canvas», вы можете использовать Component.Canvas.TextWidth. Например: чтобы получить ширину текста DBGrid, вы можете использовать:

DBGrid1.Canvas.TextWidth('Stack'); 

Здесь вы можете найти полную справку по этой проблеме: Длина строки Delphi в пикселях

5
ответ дан 3 December 2019 в 02:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: