Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2010, 17:11   #1
ZotaC
Форумчанин
 
Аватар для ZotaC
 
Регистрация: 25.06.2009
Сообщений: 163
Восклицание TCaption в своем классе

Здравствуйте, у меня возник такой вопрос. Вот мне надо вывести в игре текст в несколько строк, а сделать это надо через Canvas.TextOut. У меня стоит проверка на длину строки (когда отступать на следующую) так:

Если количество символов в строке * 14 > 500, то переходить на новую строку.

Но вот у меня возникла идея, но я не знаю, как ее применить. Ведь, если не ошибаюсь, то TCaption - это класс? Он не хранит в себе методы для перехода на новую строку и т.д.? Как применить его в случае вывода текста через Canvas.TextOut?
ZotaC вне форума Ответить с цитированием
Старый 26.05.2010, 17:29   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
TCaption= type string;
это просто строка.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 26.05.2010, 17:32   #3
ZotaC
Форумчанин
 
Аватар для ZotaC
 
Регистрация: 25.06.2009
Сообщений: 163
По умолчанию

Хм. Тогда каким образом во всех этих Memo реализованы отступы, выравнивания и т.д.?
ZotaC вне форума Ответить с цитированием
Старый 26.05.2010, 17:45   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

они вообще то сами рисуют эти все строки на себе.
и у Memo нет Caption
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 26.05.2010, 17:51   #5
ZotaC
Форумчанин
 
Аватар для ZotaC
 
Регистрация: 25.06.2009
Сообщений: 163
По умолчанию

Зато у него свойство Text типа (ранее я думал, что класса) TCaption.
ZotaC вне форума Ответить с цитированием
Старый 26.05.2010, 18:14   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

это просто одна большая строка.
а насчет как разрезать строку, то вам надо анализировать строку, то есть её длину...и наверно смотреть до пробела(если возможно)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 26.05.2010, 19:21   #7
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Самым простым доступным способом окажется прозрачный Label.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранять график в своем формате lexluter1988 Общие вопросы .NET 3 18.05.2010 20:20
Как можно заработать на своем сайте? Шерхан Свободное общение 18 18.10.2009 15:50
Торрент на своем сайте FINoM PHP 1 05.08.2009 19:05
Использование MediaPlayer в своем классе. Вадим Буренков Мультимедиа в Delphi 5 03.04.2009 17:16
[Error] MainUnit.pas(100): Incompatible types: 'Cardinal' and 'TCaption' ben95 Общие вопросы Delphi 2 02.02.2008 14:35