Курсовая работа: Построение компоненты в Builder C++

Marshrut->Width/2+R,Marshrut->Height/2+R);

}

//---------------------------------------------------------------------------

Так как никаких действий (перемещение, изменение размеров и т.д.) не планируется, маршрут движения рисуется методом Paint() при помощи функции Ris_Marshrut (intR). В противном случае лучше создать два экземпляра класса

ТMarshrut.

2 Задание начальных условий

Начальные значения задаются в конструкторе класса TOsnova.

__fastcall TOsnova::TOsnova(TComponent* Owner)

: TCustomControl(Owner)

{

Width=200;//начальнаяширина

Height=200;//начальнаявысота

D=this->Width/5*4;//диаметр большой окружности

d=this->Width/5*3; //диаметр маленькой окружности

a=0;//угол поворота

N=true;//для однократного захода в цикл

FSkorosty=20;//скорость вращения

}

Начальные значения для экземпляров классов TMarshrut и ТShar задаются при их создании в функции void __fastcallCreateWnd().

3 Задание свойств

В процессе работы желательно иметь возможность изменять скорость вращения шарика, поэтому добавим свойство FSkorosty. Тип этого свойства int. Изменение местоположения шарика будет происходить по сигналу таймера, поэтому, увеличивая или уменьшая значение интервала, можно менять скорость. Член данных FSkorosty размещён в секции private. Теперь надо объявить свойство - метод чтения и записи (в секции __published)

__property int Skorosty = { read=FSkorosty, write=SetSkorosty },

после чего это свойство отобразится в окне Инспектора Объектов.

Свойство Skorosty имеет прямой доступ к полю чтения, а для записи имеется метод SetSkorosty

//---------------------------------------------------------------------------

void __fastcall TOsnova::SetSkorosty(int Skorosty)

{

FSkorosty=Skorosty;

if (FSkorosty<5) FSkorosty=5; // если FSkorosty=0, шарикостановится

SetTimer(Handle, 1, FSkorosty, 0);

К-во Просмотров: 511
Бесплатно скачать Курсовая работа: Построение компоненты в Builder C++