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

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

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2011, 12:13   #1
belyjj
Пользователь
 
Регистрация: 20.03.2011
Сообщений: 29
По умолчанию отображение текста на канве

Код:
metka1:    
    proba:='Ñ èñïîëüçîâàíèåì '+inttostr(nom)+' ôàéëîâ - '+inttostr(kolvo)+' ðàç(à)';
   with Canvas do begin
     Canvas.Brush.Color:= clBtnFace;
     Canvas.Font.Size:=12;
     Canvas.TextOut(100,100,proba);    
    end;
    Exit;
   metka2:
    showmessage('metka2 '+inttostr(kolvo));
    proba:='Ñ èñïîëüçîâàíèåì '+inttostr(nom)+' ôàéëîâ - '+inttostr(kolvo)+' ðàç(à)';
    Canvas.Brush.Color:= clBtnFace;
    Canvas.Font.Size:=12;
    Canvas.TextOut(100,100,proba);
    Exit;
Почему во второй метке где стоит showmessage текс отображается нормально(строка proba), а если showmessage убрать, то текст не выводится?
В первой метке пробовал сделать нормально, но выводит только конец строки proba.
belyjj вне форума Ответить с цитированием
Старый 11.04.2011, 23:20   #2
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Что за Canvas (к какому компоненту прицеплен)? Canvas - это просто участок памяти и, если он ничему не принадлежит, то и не доступен взирающему на экран. Во втором случае отображение происходит потому что, после вызова и удаления диалога ShowMessage винда автоматически прорисовывает (рендерит) часть экрана, который был закрыт этим окном. Картинка на канве вынуждена прорисоваться.
Отсюда вывод: скорее всего, прорисовку изображения на канве в программе никто не делает.
Зависит, конечно, от компонента, которому принадлежит канва. Какие-то делают автоматом, какие-то нет.
Прик вне форума Ответить с цитированием
Старый 12.04.2011, 12:55   #3
belyjj
Пользователь
 
Регистрация: 20.03.2011
Сообщений: 29
По умолчанию

спасибо за ответ! мне нужно просто вывести текст на форму. Можно label сделать, но я думал так удобнее, сейщас поставил там ещё чото и так то всё выводится, походу рейдеринг)
belyjj вне форума Ответить с цитированием
Старый 12.04.2011, 13:38   #4
belyjj
Пользователь
 
Регистрация: 20.03.2011
Сообщений: 29
По умолчанию

это получается можно Form1.canvas... сделать, да?
belyjj вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Некорректное отображение текста zlo_999 HTML и CSS 2 03.01.2011 22:33
отображение текста в TMemo pinch000 C++ Builder 1 03.04.2010 00:29
перенос текста на канве varelik Общие вопросы Delphi 11 15.09.2009 18:56
Отображение текста! hotwheels HTML и CSS 5 16.05.2009 01:16
Отображение текста Hirhufa Microsoft Office Word 2 27.06.2008 15:42