Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.04.2010, 18:31
Аватар для T-dayne
T-dayne T-dayne вне форума
Начинающий
 
Регистрация: 26.01.2010
Сообщения: 180
Репутация: 31
По умолчанию Длины строк в memo

Есть Memo1, его Width = 20 и есть Memo2, его Width = 100.
Так вот, при выполении memo2.lines.addstrings(memo1.lines) происходит добавление строк, длиной как memo1. Мне же нужно, чтобы заполение происходило на всю длину memo2. Т.е. фактически, нужно убрать #10#13 в нужных местах!
Если не понятно-проект прилагается.
Прошу у Вас помощи. Спасибо.
Вложения
Тип файла: rar Новая папка.rar (2.6 Кбайт, 7 просмотров)
Ответить с цитированием
  #2  
Старый 22.04.2010, 19:26
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

тогда только руками с проверкой длинны строки (т.е. для каждой строки берешь Memo2.Canvas.TextWidth).
Ответить с цитированием
  #3  
Старый 22.04.2010, 19:27
Аватар для Crack502
Crack502 Crack502 вне форума
Начинающий
 
Регистрация: 05.01.2010
Сообщения: 125
Репутация: 10
По умолчанию

Попробуй, может пригодится
Код HTML:
var Form1: TForm1; s,s1,s2: String; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin s:=Memo1.Lines.Strings[0]; s1:=copy(s, 0, Trunc(length(s)/2)); s2:=copy(s, length(s1)+1, Trunc(length(s)/2)); memo2.Lines.Add(s1); memo2.Lines.Add(s2); end;
__________________
Вот раньше, года этак в 60-е, было всё классно - sex, drugs & rock'n'roll. А сейчас? Suxx, bugs & plug'n'play...
Ответить с цитированием
  #4  
Старый 22.04.2010, 22:44
Аватар для T-dayne
T-dayne T-dayne вне форума
Начинающий
 
Регистрация: 26.01.2010
Сообщения: 180
Репутация: 31
По умолчанию

Crack502
не, что-то совсем не-то. мб еще кто-то поможет?
Ответить с цитированием
  #5  
Старый 23.04.2010, 00:06
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Как я понимаю, у тебя "ширина" указана в символах.
Тогда надо по 5 шт исходных строк слить в одну и зусунуть ее во второе мемо.

Код:
var
  I, C : Integer;
  S : String;
begin
  C := 0;
  S := '';
  For I := 0 To  Memo1.Lines.Count-1 Do
    Begin
      S := S + Memo1.Lines[i];
      Inc(C);
      If C = 5 Then
         Begin
            Memo2.Lines.Add(S);
            C := 0;
            S := '';
         End;
    End;
  If S <> '' Then Memo2.Lines.Add(S);
end;

А вообще-то, граждане, вы совсем обленились.
Мог бы и сам подумать - не такой и сложный алгоритм.
Ответить с цитированием
  #6  
Старый 23.04.2010, 05:03
Аватар для Crack502
Crack502 Crack502 вне форума
Начинающий
 
Регистрация: 05.01.2010
Сообщения: 125
Репутация: 10
Смущение

Цитата:
Сообщение от lmikle
А вообще-то, граждане, вы совсем обленились.
Мог бы и сам подумать - не такой и сложный алгоритм.
И правда, не очень сложный...
__________________
Вот раньше, года этак в 60-е, было всё классно - sex, drugs & rock'n'roll. А сейчас? Suxx, bugs & plug'n'play...
Ответить с цитированием
  #7  
Старый 23.04.2010, 09:07
Аватар для T-dayne
T-dayne T-dayne вне форума
Начинающий
 
Регистрация: 26.01.2010
Сообщения: 180
Репутация: 31
По умолчанию

Цитата:
Как я понимаю, у тебя "ширина" указана в символах.
Нет, ширина ограничивается шириной поля Memo1.Width , MaxLength=0

Последний раз редактировалось T-dayne, 23.04.2010 в 09:11.
Ответить с цитированием
  #8  
Старый 23.04.2010, 22:13
Ama Ama вне форума
Активный
 
Регистрация: 15.07.2008
Сообщения: 260
Репутация: 23
По умолчанию

Все проще не куда. Мемо2.wordwrap:= true. С:= мемо1.техт. Удаляешь из С все #10#13. И мемо2.техт:= С. И все дела.
__________________
APPLICATION.TERMINATOR

Последний раз редактировалось Ama, 23.04.2010 в 22:18.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:25.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025