Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.95/19: Рейтинг темы: голосов - 19, средняя оценка - 4.95
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255

[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit

15.01.2012, 00:14. Показов 4130. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Подскажите в такой вот проблемке!

Как при растягивание окна за границы текст "растягивался" до его размеров!

И так же при разварачивании окна!

А то происходит такая вот беда!
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit   [C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.01.2012, 00:14
Ответы с готовыми решениями:

Подогнать таблицу по размеру
Здравствуйте. Не могу подогнать размер бланка для печати. Бланк находится на странице А4, бланк размером 19.5 см на 10 см. Под этот размер...

Как подогнать по размеру элемент
Есть макет в PSD, который нужно сверстать. Ширина одного элемента на макете 1457 px, а другого 1074 px, хотя 2й больше 1го. как такое может...

Подогнать размер картинки по размеру кнопки
всем доброго вечера , закончил курс ООП в универе , решил создать маленькую игру для субя , так сказать проверить свои знания. ...

26
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 01:45
самое простое - сделайте для РЭ выравнивание alClient

Добавлено через 2 минуты
гм, посмотрел картинки - это у вас, кажись, строки такие - копипейстили ? - сделайте из них одну большу строку и тогда посмотрим
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 02:00  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
гм, посмотрел картинки - это у вас, кажись, строки такие - копипейстили ? - сделайте из них одну большу строку и тогда посмотрим
Да копипастил!

Сделал одну большую, без изменений! Да и когда копипастил в Notepade++ всего 10 +-2 строки! а RichEdit'e вот так то отображаеться!
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 02:06
WordWrap у вашего РЭ true ?
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 02:10  [ТС]
Ну конечно! Должно быть решение!
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 03:07
текст вставляли через Инспектор объектов ? грузите из файла, из ресурса или вставляйте програмно как строку
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit   [C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit   [C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  

[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 03:18  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
текст вставляли через Инспектор объектов ?
Да!


Цитата Сообщение от LK Посмотреть сообщение
грузите из файла
Этот вариант не подходит!

Цитата Сообщение от LK Посмотреть сообщение
из ресурса
Кинь сылочку на литературку интересную, если не трудно!

Цитата Сообщение от LK Посмотреть сообщение
вставляйте програмно как строку
Ну это как тоне интересно!! У меня есть, например, лекция на 41 страницу 14 шрифтом не вариант впихивать ее в код!))

Спасибо огромное!
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 03:26
Цитата Сообщение от Infinity3000 Посмотреть сообщение
1. Да!
2. Кинь сылочку на литературку интересную, если не трудно!
3. Ну это как тоне интересно!! У меня есть, например, лекция на 41 страницу 14 шрифтом не вариант впихивать ее в код!))
1. ну вот...
2. яку літературу ?
3. Форматирование к строке отношения не имеет, его можно задать для РЭ, потом вставить строку, все тексты можно вынести в отдельный юнит/или сделать для текстов функцию и тоже - в отдельный юнит, никому мешать не будет - и не париться с ресурсами, хотя с ресурсами гламурнее
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 03:41  [ТС]
LK, Спасибо, в который раз выручаете! Про отдельный юнит вообще шикарная идея! Спасибо!!
0
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 04:27  [ТС]
Да все работает!!

Вот если б это все дело подогнать по ширине вообше шикарно б было б! Ну буду ума и разума набираться! может в скором будущем получиться!!


Спасибо LK
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit   [C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit   [C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  

[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 04:31
подганять по ширине будем после обеда, как отосплюсь ))

Добавлено через 1 минуту
еще неплохо было бы сделать оступы текста слева и справа
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 04:34  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
еще неплохо было бы сделать оступы текста слева и справа
Форматированием текста завта займусь(сегодня получается)! тут я думаю проблем не будет! наверно!!

THANKS !
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 04:34
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
5
6
7
TRect Rect;
SendMessage(RichEdit->Handle, EM_GETRECT, 0, long(&Rect));
Rect.Top = 8;
Rect.Left = 10;
Rect.Right = 10;
SendMessage(RichEdit->Handle, EM_SETRECT, 0, long(&Rect));
RichEdit->Refresh();
3
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 04:48  [ТС]
Код не правильно работает, либо я уже сплю!

При любых значениях текст немного сдвинаеть вверх и влево!

Кидал в обработчик события onClick для кнопки!

наверно нужно лечь проспаться, и завтра продолжить!!)))
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 04:51
поставьте в конструктор формы
ну да... утро вечера ...
1
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 04:57  [ТС]
Без изменения!
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.01.2012, 05:56
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
__fastcall TForm1::TForm1(TComponent* Owner)
  : TForm(Owner)
{
  TRect Rect;
  SendMessage(RichEdit1->Handle, EM_GETRECT, 0, long(&Rect));
  Rect.Top = Rect.Top+8;
  Rect.Left = Rect.Left+10;
  Rect.Right = Rect.Right-10;
  SendMessage(RichEdit1->Handle, EM_SETRECT, 0, long(&Rect));
//  RichEdit->Refresh();
}
Миниатюры
[C++ Builder] TRichEdit. Подогнать текст по размеру RichEdit  
3
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
15.01.2012, 14:10  [ТС]
Все классно работает!! Спасибо!!!
0
 Аватар для mpdasa
5 / 5 / 1
Регистрация: 18.01.2010
Сообщений: 136
03.06.2012, 09:55
Цитата Сообщение от Infinity3000 Посмотреть сообщение
Все классно работает!! Спасибо!!!
А у меня этот код работает не корректно. Когда запускаю ваш код тогда то что не помещается в окне обрезается.
Delphi
1
2
3
4
5
6
7
SendMessage(RichEdit1.Handle,EM_GETRECT,0,LongInt(@Rect));
Rect.Top := Rect.Top+8;
Rect.Left := Rect.Left+10;
Rect.Right := Rect.Right-10;
Rect.Bottom := Rect.Bottom-10;
SendMessage(RichEdit1.Handle,EM_SETRECT,0,LongInt(@Rect));
RichEdit1.Refresh;
0
 Аватар для Infinity3000
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
03.06.2012, 22:40  [ТС]
На во вложении уважаемого LK в посте №17 видно что код работает, у меня оналагично! А с вопросами по Delphi Вам в соответсвующий раздел!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.06.2012, 22:40
Помогаю со студенческими работами здесь

[C++ Builder] TRichEdit. Нажать ЛКМ на строку.
Здравсувуйте! Нужна помощь в следующей проблеме! Как можно нажать, например, на 1 строку левой кнопкой мыши? Делал что то...

Требуется обрезать текст по размеру ячейки. По клику по этой ячейке, вывести текст полностью.
Доброй ночи! Прошу помочь с такой задачей.. Нужно вывести текст из бд в таблицу, это как бы не проблема.. но загвоздка в том, что...

Как подсветить текст в TRichEdit
Как подсветить текст в TRichEdit? Я пытался это сделать вот таким кодом, procedure rEditChange(Sender: TObject); var SInt:...

Как перенести неполный текст из одного TRichEdit в другой?
здравствуйте! помогите новичку плиз ) Задача такая - загружается текст в RichEdit1 из файла вида : 53453455 5435345435 5435435345 ...

Как записать весь текст с TRichEdit одним значением в ini файл
Привет, как записать в *.ini файл одним значением все строки из TRichEdit, это возможно? помогите пожалуйста


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru