Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 11:52 14.07.25 
Компютри и Интернет
   >> Delphi
*Кратък преглед

Страници по тази тема: 1 | 2 | (покажи всички)
Тема Мемонови  
Автор novak11 (непознат)
Публикувано08.11.13 15:47



Здравейте, искам да управлявам мемо с текста в него. При зареждането на текста от стринг s например при срещането на символа | да го изтрие и да добави нов ред; при срещане на PFOTO: стрингът след него да зарежда картинка в image компонента. За първото примерно пробвах това, но не става:
s := ListItem.SubItems[7];
for i := 0 to length(s) do Begin
if s <> '|' then meKomentar.Lines.Append(s)
else meKomentar.Lines.Add('');
end;
Как може да се осъществят тези неща? Дали е по-добре при самото попълване на мемото на проверявам за тези символи или първо да попълня мемото и после да изследвам ред по ред.



Тема Re: Мемо [re: novak11]  
Автор Timo (собствен ник )
Публикувано08.11.13 16:59



дай малко код

Успехът се гради на знания и собствена религия!


Тема Re: Мемонови [re: novak11]  
Автор NikB (спокоен)
Публикувано11.11.13 10:42



Ами разгледай StringReplace функцията и я ползвай, когато променяш Memo-то.
Ама по-добре работи с RichEdit, защото Мемо е ограничено до около 32000 символа.

function StringReplace(const S, OldPattern, NewPattern: string; Flags: ReplaceFlags): tring;

Редактирано от NikB на 11.11.13 10:43.



Тема Re: Мемонови [re: NikB]  
Автор novak11 (непознат)
Публикувано11.11.13 13:25



Според теб дали е по-добре при самото попълване на мемото на проверявам за тези символи или първо да попълня мемото и после да изследвам ред по ред? RichEdit не намерих в Lazarus.



Тема Re: Мемонови [re: novak11]  
Автор NikB (спокоен)
Публикувано11.11.13 18:25



1. За попълване/проверка: зависи как върви работата
- ако бързо идват много редове и с това завършва запълването, по-добре е да ги добавиш в един стринг ( с разделители CR+LF, т.е. #$0D#$0F), след това да направиш замяната и накрая да напишеш Memo.Text := стринга.
- ако от време на време идват единични редове - замяната ще я правиш преди попълването.
2. Не съм се занимавал с Лазаррус, но RichEdit е Win контрола и няма начин да липсва - може да се казва нещо друго.



Тема Re: Мемонови [re: NikB]  
Автор novak11 (непознат)
Публикувано05.12.13 15:05



Ето това:

Form1.meKomentar.Text := StringReplace(s,'|',#$0D,[rfReplaceAll]);

върши работата! Много благодаря!

Редактирано от novak11 на 05.12.13 15:43.



Тема Re: Мемонови [re: NikB]  
Автор novak11 (непознат)
Публикувано09.12.13 16:37



"по-добре е да ги добавиш в един стринг ( с разделители CR+LF, т.е. #$0D#$0F)"

Тези разделите не са съвсем така. Излиза само първия, #$0D. Другия, който е нещо подобно на: <--| , мисля съответства на Ctrl+Enter и отива на нов ред, не е този символ. Би ли казал кой е кода на другия символ? В Character Maps не мога да го намеря. Трябва да заменя цялата двойка едновременно, защото после като го запиша във файл, отива на нов ред и после като го чета обратно в ListView излизат на толкова редове, колкото са в мемото, а трябва всичко да е на един ред, разделен с '|'. Вижда се само при запис във файл.

Редактирано от novak11 на 09.12.13 16:42.



Тема Re: Мемонови [re: novak11]  
Автор NikB (спокоен)
Публикувано09.12.13 19:08



А, LineFeed (LF) e с код 10 (0x0A, щестнадесетично) - онова 0F e печатна грешка



Тема Re: Мемонови [re: NikB]  
Автор novak11 (непознат)
Публикувано10.12.13 11:32



Много благодаря! Сега вече стана точно както го исках.





Тема Re: Мемонови [re: NikB]  
Автор novak11 (непознат)
Публикувано11.12.13 14:59



Като копирам текст примерно от форума или с уеб адрес, пак ми го изкарва на повече редове при запис, макар че в ListView е наред. Да не би да има още някой друг символ в уеба, който да трябва да изтривам?




Страници по тази тема: 1 | 2 | (покажи всички)
*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.