Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
25 / 25 / 15
Регистрация: 17.02.2014
Сообщений: 310
1

Canvas, рисования при активации окна

03.10.2015, 18:05. Показов 1009. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я хочу нарисовать прямоугольника при открытии окна поэтому я написал код в TForm1::TForm1(TComponent* Owner):TForm(Owner) не помогло, попытался создать событие "активацию" и там написать код тоже не помогло.
Как нарисовать прямоугольника при открытии окна ? Почему код работает только в Button1Click(TObject *Sender)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
Canvas->Pen->Color = (TColor)RGB(255, 0, 0);
Canvas->Pen->Width = 5;
Canvas->Rectangle(20,20,10,10);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormActivate(TObject *Sender)
{
Canvas->Pen->Color = (TColor)RGB(255, 0, 0);
Canvas->Pen->Width = 5;
Canvas->Rectangle(20,20,10,10);
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Canvas->Pen->Color = (TColor)RGB(255, 0, 0);
Canvas->Pen->Width = 5;
Canvas->Rectangle(20,20,10,10);
}
//---------------------------------------------------------------------------
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2015, 18:05
Ответы с готовыми решениями:

Подходит ли Canvas для рисования перемещающихся по карте человечков?
Всем хай) Возникла задача порисовать. Есть карта, и по ней бегает много человечков в виде красных...

Есть код рисования мышкой, как сделать, чтобы он работал только при активации/деактивации
Погуглил, получил код: procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; ...

Как сделать так, чтобы при активации окна приложения не было видно панели задач и меню пуск?
Приложение я пишу на WPF+C#. Мое окно наложено поверх других окон, но это только в том случае, если...

Не меняются стили рисования в canvas
Всем привет. Сижу в Rad Studio 2010, Delphi. Добавил на форму button1, image И выполняю...

2
266 / 211 / 89
Регистрация: 27.09.2010
Сообщений: 1,234
03.10.2015, 18:37 2
user-men,
поставь в FormPaint
C++
1
2
3
4
5
6
7
void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Pen->Color = (TColor)RGB(255, 0, 0);
Canvas->Pen->Width = 5;
Canvas->Rectangle(20,20,10,10);
}
//---------------------------------------------------------------------------
все работает!
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32971 / 21284 / 8173
Регистрация: 22.10.2011
Сообщений: 36,559
Записей в блоге: 8
03.10.2015, 18:41 3
Потому что канва не хранит того, что на ней нарисовано. И после событий OnCreate/OnActivate происходят другие события, которые очищают канву, следовательно рисунок исчезает. Рисуй в OnPaint, тогда он будет перерисовываться каждый раз, когда необходимо перерисовать форму.
1
03.10.2015, 18:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.10.2015, 18:41
Помогаю со студенческими работами здесь

Обход ImageData для попиксельного рисования на canvas
Здравствуйте, есть функция, которая закрашивает canvas в красный цвет. Для этого нужно обойти весь...

Где писать код для рисования с помощью canvas?
не помню где писать код для рисования с помощью canvas?( form1.paint как то так ,или нет..

Как разместить EditText и область рисования Canvas в одном Activity?
Как разместить EditText и область рисования Canvas в одном Activity?

Python->Tkinter->Canvas получение картинки из поля для рисования
Здравствуйте, столкнулся с проблемой, требуется получить картинку из поля для рисования...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru