Wpf textblock, перенос строки в атрибуте text

Отображение текста в надписях компонентов Label, StaticText

Тексты, отображаемые в компонентах, определяются значением их свойства Caption. Его можно устанавливать в процессе проектирования или задавать и изменять программно во время выполнения приложения. Например:

Во всех компонентах цвет фона определяется свойством Color, а цвет надписи — подсвойством Color свойства Font. Например, можно задать цвет фона равным clWhite — белый. Компонент StaticText имеет свойство BorderStyle, определяющее рамку текста — бордюр. Размер определяется свойством AutoSize. Если AutoSize=true, то вертикальный и горизонтальный размеры компонента определяются размером надписи. Если AutoSize=false, то выравнивание текста внутри компонента определяется свойством Alignment, которое позволяет выравнивать текст по левому краю, правому краю или центру клиентской области метки.

Перенос текста в Label по строкам WordWrap=true — допустимость переноса слов длинной надписи, превышающей длину компонента, на новую строчку. При этом свойство AutoSize = false (чтобы размер компонента не определялся размером надписи) и сделать высоту компонента такой, чтобы в нем могло поместиться несколько строк. В метке StaticText перенос длинного текста осуществляется автоматически, если AutoSize=false и размер компонента достаточен для размещения нескольких строк.

Задание 1. Рассмотреть свойства компонента Label, создав следующие две формы. Можно все выполнить на одной форме. Рисунок 1.

Хитро передаем строки через команды DOM

Вот теперь пришло время разобрать добавление строк в html-файл c учетом переносов. Для этого можно воспользоваться специальным тегом , к примеру, вот так:

1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html>
<body>
<p id="person"></p>
<script>
 
var str1 = 'Я Карлсон, который живет на крыше!';
var str2 = "И я очень люблю варенье!";
 
document.getElementById("person").innerHTML = str1+ "<br/><b>" + str2 + "</b><br/>";
 
</script>
</body>

Помимо этого, можно использовать другой парный элемент – <pre>. Данный тег позволяет сохранять все пробельные символы в том количестве, в котором их задал девелопер. Однако он преобразует шрифт текстового контента в моноширный. Таким образом, измененная программа будет выглядеть вот так:

1
2
3
4
5
6
7
8
9
<!DOCTYPE html>
<body>
<h2 id="person"></h2>
<script>
 
var str1 = 'Я Карлсон, который живет на крыше!';
var str2 = "И я очень люблю варенье!";
 
document.getElementById("person").innerHTML ="<pre>"+ str1 +"\n    "+ str2 +"

Что такое разрыв страницы в Ворде

Разрыв между листами, например, в Word 2013 года представляет собой напечатанный знак, похожий на обозначение абзаца.

Данный символ является командой, иными словами, кликая на него, вы совершаете определенное действие, то есть совершаете отступ.

Вероятно, такая команда помешает вашей дальнейшей работе. Но ведь есть такие пользователи текстового редактора, для которых она действительна полезна.

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

Это особенно удобно, для поиска нужной вам информации, которая находится в обособлении.

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

  • Год выпуска текстового редактора, например, Word 2003;
  • Объем набираемого или редактируемого текста;
  • Предполагаемое количество действий (правок, удалений, переносов, замен и проч.);
  • Цель создания текстового документа.

Удаление разделения листа

Если вы применили разделение по ошибке либо во время проверки документа поняли, что оно не нужно, его можно удалить. При этом переход, который происходит в Ворд автоматически при достижении текстом конца листа, удалить или изменить нельзя — это обязательная особенность программы. Можно убрать только переносы, добавленные пользователями.

Удаление разрыва вручную

Этот способ противоположен созданию переноса с помощью нажатия Enter. Он — самый простой, но не такой удобный и быстрый, как остальные:

  1. Установите курсор в конец последней строки абзаца;
  2. Нажмите Delete;
  3. Если перенос не исчез, продолжайте нажимать клавишу — возможно, фрагмент текста отделён большим количеством переноса строк;

Для того чтобы понять, что переход удалён, обратите внимание на курсор на конце строки. Если абзац последний, а он занимает конечное положение, значит, все пустые строки исчезли

Удаление разрыва через «Отобразить»

Разделение листов в Ворд представляет собой технический символ — вроде знака табуляции. Его не видно в обычном режиме просмотра файла. Для того чтобы удалить символ, нужно использовать расширенные возможности:

  1. Откройте «Главная», нажмите «Отобразить все знаки» (кнопка в виде специального символа, которая находится слева от меню выбора стиля текста) — это сделает видимыми все разрывы;
  2. Для удаления перехода выделите символ, после чего удалите его на кнопку Delete.

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

Удаление разрыва через «Черновик»

Этот способ также отлично подходит для ручного удаления нескольких переходов в документе:

  1. Кликните на вкладку «Вид»;
  2. Выберите тип отображения документа «Черновик»;
  3. Установите курсор около разделения (перед строкой текста, которая находится уже на новом листе);
  4. Нажмите клавишу Delete.

Удаление разрыва с помощью поиска по документу

Этот способ отлично подходит в том случае, когда нужно удалить большое количество переходов либо все сразу:

  1. Откройте «Главная», нажмите «Отобразить все знаки» (кнопка в виде специального символа, которая находится слева от меню выбора стиля текста) — это сделает видимыми все разделители;
  2. Скопируйте один из значков разрыва в буфер обмена (Ctrl + «C»);
  3. Нажмите сочетание клавиш Ctrl + «F» — это активирует поиск по тексту;
  4. Вставьте в строку специальный символ разрыва строки, если вам нужно удалить несколько переходов;
  5. Выделите знак и нажимайте Delete, после чего можно пользоваться стрелками перехода вверх и вниз;
  6. Если вам нужно удалить все разделители разом, используйте команду «Заменить» — Ctrl + «H»;
  7. Вместо использования поля «Найти» воспользуйтесь параметром внизу окошка — «Больше» — «Заменить» — «Специальный» — «Разрыв страницы»;
  8. В качестве «Заменить на» укажите пробел;
  9. Кликайте «Заменить» столько раз, сколько нужно либо «Заменить все», чтобы сделать это во всём документе.

Бонус — br clear

А как сделать так чтобы текст, в котором вы поставили перенос строки, не обтекал плавающий элемент (это либо изображение с установленным align, либо элемент со свойством float), а начинался ниже элемента? Для этого можно использовать атрибут clear.

Допустим, у нас есть изображение выровненное по левому краю (align=»left»). Если мы установим <br clear=»all»> или <br clear=»left»>, то текст после тега <br> (следующая строка, которую мы и переносим) будет отображаться как надо, ниже рисунка. Другие значения атрибута clear тега <br> сделают так, чтобы текст обтекал рисунок, расположившись справа от него.

Использование этого специфичного атрибута не приветствуется спецификацией HTML — такой код будет невалидным.

Кстати, рекомендуем прочесть: Как вставить изображение в HTML.

11 ответов

в системе.pas (который автоматически используется) определяется следующее:

const sLineBreak = {$IFDEF LINUX} AnsiChar(#10) {$ENDIF} {$IFDEF MSWINDOWS} AnsiString(#13#10) {$ENDIF};

это из Delphi 2009 (обратите внимание на использование AnsiChar и AnsiString). (Line wrap добавлен мной.). поэтому, если вы хотите сделать обертку TLabel, убедитесь, что AutoSize имеет значение true, а затем используйте следующий код:

поэтому, если вы хотите сделать обертку TLabel, убедитесь, что AutoSize имеет значение true, а затем используйте следующий код:

label1.Caption := ‘Line one’+sLineBreak+’Line two’;

работает во всех версиях Delphi с тех пор, как был представлен sLineBreak, который, я считаю, был Delphi 6.

вот еще более короткий подход:

my_string := ‘Hello,’#13#10′ world!’;

my_string := ‘Hello,’ + #13#10 + ‘world!’;

#13#10 – Это символы CR/LF в decimal

или вы также можете использовать ярлык ^M+^J. Все дело в предпочтениях. коды “CTRL-CHAR”переводятся компилятором.

MyString := ‘Hello,’ + ^M + ^J + ‘world!’;

вы можете убрать + между ^M и ^J, но тогда вы получите предупреждение от компилятора (но он все равно будет компилироваться нормально).

на стороне, трюк, который может пригодиться:Если вы держите несколько строк в TStrings, вам просто нужно использовать свойство Text TStrings как в следующем примере.

Label1.Caption := Memo1.Lines.Text;

и вы получите свой многострочный ярлык…

var stlst: TStringList;begin Label1.Caption := ‘Hello,’+sLineBreak+’world!’; Label2.Caption := ‘Hello,’#13#10’world!’; Label3.Caption := ‘Hello,’ + chr(13) + chr(10) + ‘world!’; stlst := TStringList.Create; stlst.Add(‘Hello,’); stlst.Add(‘world!’); Label4.Caption := stlst.Text; Label5.WordWrap := True; //Multi-line Caption Label5.Caption := ‘Hello,’^M^J’world!’; Label6.Caption := AdjustLineBreaks(‘Hello,’#10’world!’); {http://delphi.about.com/library/rtl/blrtlAdjustLineBreaks.htm}end;

ShowMessage(‘Hello’+Chr(10)+’World’);

У меня нет копии Delphi, но я уверен, что если вы установите свойство wordwrap в true, а свойство autosize в false, оно должно обернуть любой текст, который вы поместили в размер, который вы делаете метку. Если вы хотите сломать линию в определенном месте, то это может сработать, если вы установите вышеуказанные настройки и вставьте из текстового редактора.

надеюсь, что это помогает.

иногда я не хочу загромождать пространство кода, особенно для статической метки. Чтобы просто определить его с помощью формы, введите текст метки в форме, затем щелкните правой кнопкой мыши в любом месте той же формы. Выберите “вид как текст”. Теперь вы увидите все объекты как спроектированные, но только как текст. Прокрутите вниз или найдите текст. Когда вы его найдете, отредактируйте заголовок, чтобы он выглядел примерно так:

Подпись = ‘Строка 1’ #13 ‘Строка 2’ #13 ‘Строка 3’

#13 означает порядковый номер 13 или ascii для возврата каретки. Chr (13) – это та же идея, CHR () изменяет номер на порядковый тип.

обратите внимание, что в этом конкретном аспекте Delphi нет двоеточия, и вместо”: = “используется”=”. Текст для каждой строки заключен в одинарные кавычки

Как только вы закончите, щелкните правой кнопкой мыши еще раз и выберите “вид формы”. Теперь вы можете сделать любую форматирования, такие как полужирный, по правому краю и т. д. Вы просто не можете повторно редактировать текст в форме или потеряет ваши разрывы линии.

Я также использую “вид как текст”для нескольких изменений, где я просто хочу прокрутить и сделать замены и т. д. Быстрый.

Дэйв

private { Private declarations } {declare a variable like this} NewLine : string; // ok // in next event handler assign a value to that variable (NewLine) // like the code downprocedure TMainForm.FormCreate(Sender: TObject);begin`enter code here` NewLine := #10; {Next Code To show NewLine In action} //ShowMessage(‘Hello to programming with Delphi’ + NewLine + ‘Print New Lin now !!!!’);end;

Перенос части выражения на новую строку

Деление длинного оператора на части улучшит его читаемость, сделает код процедуры более наглядным и компактным, не позволит ему уходить за пределы видимого экрана справа.

Переносимые на новые строки части кода одного выражения разделяются символом нижнего подчеркивания (_), который ставится обязательно после пробела. Этот символ указывает компилятору VBA Excel, что ниже идет продолжение текущей строки.

Пример 1
Процедуры без переноса и с переносом части кода операторов:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

‘Процедура без переноса
‘кода операторов

SubPrimer_1_1()

DimaAsLong,bAsLong

a=12*7-155+36

b=a+25+36*15-5

MsgBoxb

EndSub

‘Процедура с переносом
‘кода операторов

SubPrimer_1_2()

DimaAsLong,_

bAsLong

a=12*7-15_

5+36

b=a+25+36_

*15-5

MsgBoxb

EndSub

Вы можете скопировать код Примера 1 и проверить его работоспособность. В обоих случаях информационное окно MsgBox покажет одинаковый результат.

Иногда пишут, что для переноса кода добавляется пробел с символом подчеркивания. Так легче запомнить и не забыть, что перед знаком подчеркивания обязательно должен быть пробел. Но на самом деле, как видите из примера выше, пробелы уже есть в исходном коде, и мы добавили только символы подчеркивания.

Удаление разделения листа

Если вы применили разделение по ошибке либо во время проверки документа поняли, что оно не нужно, его можно удалить. При этом переход, который происходит в Ворд автоматически при достижении текстом конца листа, удалить или изменить нельзя — это обязательная особенность программы. Можно убрать только переносы, добавленные пользователями.

Удаление разрыва вручную

Этот способ противоположен созданию переноса с помощью нажатия Enter. Он — самый простой, но не такой удобный и быстрый, как остальные:

  1. Установите курсор в конец последней строки абзаца;
  2. Нажмите Delete;
  3. Если перенос не исчез, продолжайте нажимать клавишу — возможно, фрагмент текста отделён большим количеством переноса строк;

Для того чтобы понять, что переход удалён, обратите внимание на курсор на конце строки. Если абзац последний, а он занимает конечное положение, значит, все пустые строки исчезли

Удаление разрыва через «Отобразить»

Разделение листов в Ворд представляет собой технический символ — вроде знака табуляции. Его не видно в обычном режиме просмотра файла. Для того чтобы удалить символ, нужно использовать расширенные возможности:

  1. Откройте «Главная», нажмите «Отобразить все знаки» (кнопка в виде специального символа, которая находится слева от меню выбора стиля текста) — это сделает видимыми все разрывы;
  2. Для удаления перехода выделите символ, после чего удалите его на кнопку Delete.

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

Удаление разрыва через «Черновик»

Этот способ также отлично подходит для ручного удаления нескольких переходов в документе:

  1. Кликните на вкладку «Вид»;
  2. Выберите тип отображения документа «Черновик»;
  3. Установите курсор около разделения (перед строкой текста, которая находится уже на новом листе);
  4. Нажмите клавишу Delete.

Удаление разрыва с помощью поиска по документу

Этот способ отлично подходит в том случае, когда нужно удалить большое количество переходов либо все сразу:

  1. Откройте «Главная», нажмите «Отобразить все знаки» (кнопка в виде специального символа, которая находится слева от меню выбора стиля текста) — это сделает видимыми все разделители;
  2. Скопируйте один из значков разрыва в буфер обмена (Ctrl + «C»);
  3. Нажмите сочетание клавиш Ctrl + «F» — это активирует поиск по тексту;
  4. Вставьте в строку специальный символ разрыва строки, если вам нужно удалить несколько переходов;
  5. Выделите знак и нажимайте Delete, после чего можно пользоваться стрелками перехода вверх и вниз;
  6. Если вам нужно удалить все разделители разом, используйте команду «Заменить» — Ctrl + «H»;
  7. Вместо использования поля «Найти» воспользуйтесь параметром внизу окошка — «Больше» — «Заменить» — «Специальный» — «Разрыв страницы»;
  8. В качестве «Заменить на» укажите пробел;
  9. Кликайте «Заменить» столько раз, сколько нужно либо «Заменить все», чтобы сделать это во всём документе.

Разрыв в Ворд — функция, которая позволяет отформатировать текст в соответствии с требованиями для печати либо просто сделать его более удобным для чтения. В программе несколько способов сделать перенос, а также настроить его. Ненужные разделения можно удалить — также с помощью нескольких вариантов. Тем не менее, рекомендуется следить за элементами сразу, так как справиться сразу со всеми переносами может быть сложно.

Размеры

Теперь мы не может однозначно сказать, какая будет ширина у нашего письма, поэтому все параметры width следует указывать в процентах. Бывают случаи, когда нам необходимо разместить, например, таблицу товаров, где ширина каждого блока фиксирована. Тогда на маленьких экранах они должны перестраиваться друг под друга (примерно как при адаптации обычных веб-страниц).

Это реализуется следующим образом:

<table width="100%" align="center" border="0" cellspacing="0" cellpadding="0">    <tr><td align="left"><!--                 Item1 --><div style="float: left; display: inline-block; vertical-align:top; width: 300px;">    <table width="300" border="0" cellspacing="0" cellpadding="0"  align="left" style="border-collapse:collapse;">    <tr><td align="left" valign="top">       <table width="100%" border="0" cellspacing="0" cellpadding="0" >            <tr><td align="center" valign="middle">                Товар 1            </td></tr>        </table>     </td></tr></table></div><!--         Item1 END --><!-->    </td><td>    <!--><!--                 Item2 --><div style="float: left; display: inline-block; vertical-align:top; width: 300px;">    <table width="300" border="0" cellspacing="0" cellpadding="0"  align="left" style="border-collapse:collapse;">    <tr><td align="left" valign="top">       <table width="100%" border="0" cellspacing="0" cellpadding="0" >            <tr><td align="center" valign="middle">                Товар 2            </td></tr>        </table>     </td></tr></table></div><!--         Item2 END --></td></tr></table>

Рассмотрим каждый фрагмент кода подробнее.

Сначала мы создаем таблицу шириной 100%, в которой и размещаем блоки. Это сделано для того, чтобы все прочие объекты не пытались обтекать наши блоки с товарами.

Следует обратить внимание еще на пару моментов: параметр display у нашего блока следует указывать как inline-block, также следует указывать параметр float. Сами блоки следует писать без пробелов и переносов строк (они могут быть внутри комментариев, для бОльшего удобства восприятия)

Это решит проблему в веб интерфейсе Outlook.com (hotmail.com), где блоки отображаются как «инлайновые». Если в outlook 2010/2013 возникает проблема с лишними отступами, ее можно решить, заключив контент блока в

<div style="mso-table-lspace:-5px;mso-table-rspace:-5px;"> ... </div>

Но это может вызвать проблемы в outlook 2007.

Между блоков следует код в <!—> — этот код предназначен исключительно для Outlook 2007/2010/2013. Он не поддерживает блочные теги, поэтому специально для него мы формируем вспомогательные ячейки таблицы.

При объявлении блоков можно комбинировать значения ширины указанной в процентах и ограничением минимальной ширины (чтобы блоки перескакивали, достигнув какой-то минимальной ширины)

Горячие клавиши

Самым быстрым способом того, как сделать в «Ворде» разрыв страницы, является использование «горячих клавиш». Вне зависимости от версии программы, необходимо установить курсор на том месте, после которого должен начинаться новый лист, и нажать одновременно сочетание Ctrl + Enter. Результатом этого станет перенос идущего ниже текста на страницу ниже. Стоит отметить, что при наличии выделенного текста перед использованием «горячих клавиш» он будет просто заменён на вставленный затем разрыв страницы, поэтому перед нажатием стоит убедиться в отсутствии выделения части документа.

Перенос строк текста в HTML через тег

Итак, первый, самый популярный и в то же время специально созданный тег для переноса строк в тексте – это:

Вы могли также видеть этот тег и без слеша (косой черты) на конце:

Они оба одинаково выполняют свою роль, только первый является правильным (валидным) вариантом согласно спецификации XHTML 1.0 (теги, не имеющие закрывающей части, должны содержать слеш на конце).

Пример использования:

Использовать его вы можете сколько угодно раз. Одно использование – один перенос строки, соответственно, два этих тега, поставленные подряд, дают двойной перенос.

Хочется отметить, что при переносе строки таким способом к ней не добавляется дополнительный отступ, который вы можете увидеть при использовании тега <p> (о нем чуть ниже).

Сам по себе тег <br /> имеет поддержку атрибута «clear», который указывает на то, как обрабатывать следующую строку, если текст обтекает плавающий элемент.

Допустимые значения следующие:

all – отменяет обтекание элемента с обоих (левой и правой) сторон.

left – отменяет обтекание элемента с левой стороны.

right – отменяет обтекание элемента с правой стороны.

none – отменяет действие атрибута.

Пример использования:

Обратите внимание, что если вы хотите сделать большой разрыв между двумя строками – использование тега является не лучшим решением. Суть тега – перенос строки, а не задание отступов

Приемлемое количество подряд используемых тегов (на мой взгляд) – 1–2.

Все о теге для переноса строки br

Тег br осуществляет одинарный перенос строки в HTML (что это такое описано тут) и определяется всеми браузерами. Да, чуть не забыл — если вы используете тег br, то в отличие от тега абзаца p, у вас не добавляется пустой отступ (перед строкой).

Тег br является пустым (пустой значит без содержимого, ничего не содержит), а значит его не нужно закрывать. А так как его не нужно закрывать, было придумано краткое описание — оно изначально подразумевает то, что сам тег не имеет закрывающего тега.

Представьте на минуту, что не было бы краткого описания. Что тогда? Тогда пришлось бы каждый раз «закрывать и открывать» перенос строки примерно так: <br></br>. Это как минимум неудобно. Но, тем не менее, в строгом XHTML закрывать его обязательно тегом <br />.

Если стоит задача увеличить расстояние по вертикали — между теми строками, где вы вставляете перенос — сделайте двойной перенос, вставив тег <br> дважды подряд.

Пример:

Чтобы осуществить перенос следующего предложения на новую строку, используем тег br.<br>
Ура, второе предложение на новой строке.

Результат:

Чтобы осуществить перенос следующего предложения на новую строку, используем тег br.
Ура, второе предложение на новой строке.

Реальный пример:

А. Блок<br>
Ночь, улица, фонарь, аптека,<br>
Бессмысленный и тусклый свет.<br>
Живи еще хоть четверть века —<br>
Все будет так. Исхода нет.<br><br>
Умрешь — начнешь опять сначала<br>
И повторится все, как встарь:<br>
Ночь, ледяная рябь канала,<br>
Аптека, улица, фонарь.

Результат:

А. Блок

Ночь, улица, фонарь, аптека,
Бессмысленный и тусклый свет.
Живи еще хоть четверть века —
Все будет так. Исхода нет.

Умрешь — начнешь опять сначала
И повторится все, как встарь:
Ночь, ледяная рябь канала,
Аптека, улица, фонарь.

Как выглядит:

Компонент MaskEdit (на стр. Additional)

Он отличается от Edit тем, что в нем можно задать строку маски в свойстве EditMask. Маска состоит из трех разделов, между которыми ставится точка с запятой:

  1. записываются специальным образом символы (см. таблицу), которые можно вводить в каждой позиции, и символы, добавляемые самой маской;
  2. записывается 1 или 0 в зависимости от того, надо или нет, чтобы символы, добавляемые маской, включались в свойство Text компонента;
  3. указывается символ, используемый для обозначения позиций, в которых еще не осуществлен ввод.

Прочитать результат ввода можно или в свойстве Text, которое в зависимости от вида второго раздела маски включает или не включает в себя символы маски, или в свойстве EditText, содержащем введенный текст вместе с символами маски.

Для по­строения маски используются специальные символы: ! Поле заполняется слева направо 0 Цифра (0-9) или знак (+/-) обязательны __ Автоматически вставляет пробел в указанной позиции > Все символы справа от указанной позиции переводятся в верхний регистр

Инструкционная картаЛекцияКонтроль

Доброго времени суток, Уважаемые! Проблема такая, в репорте весь текст непомещается на одном Label”е, нужно сделать перенос текста с одного Label”a на другой, т.е. текст на одном Label”е начинается, а на другом заканчивается. Спасибо!

Lion ( 2003-03-02 09:13 )

Неужели никто не знает??

Anatoly Podgoretsky ( 2003-03-02 09:56 )

Не понятно, что ты хочешь сделать, разделить строку на две, тогда Copy, что бы одна строка занимала несколько строк, тогда настройка свойств. Можешь привести пример или выразись понятнее. Обычно достаточно описать задачу, а не решение.

Song ( 2003-03-02 09:59 )

Да просто поставь у QRLabel AutoSize:=False WordWrap:=True

дальше расширь его высоту на 2 строчки или сколько там тебе надо и пиши туда текст, он сам перенесётся по строкам.

Lion ( 2003-03-02 10:04 )

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

Lion ( 2003-03-02 10:54 )

Суть вот в чем, пишется длинный текст, примерно строчек на 5 и под каждой строчкой идет подпись маленьким шрифтор, и если поставить AutoSize:=False WordWrap:=True , то обычный текст будет сливаться с подписью (маленьким шрифтом), расстояние между строчками маленькое, для этого и нужно сделать не один Label , а несколько, и текст который не помещается в первом, переносится на второй и т.д. Так вот, как можно решить эту проблему.

Иван Брылёв ( 2003-03-02 11:46 )

Все, что приходит в голову — считать кол-во символов в Label. Например, у тебя кол-во символов N, LongString — та самая длинная строка. И тогда if Length(LongString) > N then begin Label1.Caption:=Copy(LongString, 1, N); Label2.Caption:=Copy(LongString, N+1, N); . LabelM.Caption:=Copy(LongString, M*N + 1, N); end;

Ну вот в таком духе. Понятно, что число символов может зависеть и от шрифта. Но это уже другая история.

Lion ( 2003-03-02 19:16 )

Вот, что и требовалось, большое СПАСИБО.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: