Шаг 1.Создадим проект Библиотека элементов управления Windows Form. Назовем его letaiushaya_stroka.Подключим две библbотеки для генерации случайных чисел: random, time.h. Добавим 3 компонента Label и два Timer Первый таймер будет отвечать за задtржку скорости движения строки по X.В его событии Tick
Пропишем следующее :
srand( (unsigned)time( NULL ) );
int z=rand();
int x1;
int q=rand()%2;
if(q==0)
z=-z;
x1=label1->Location.X+(z%2)*2;
if(x1>this->Width)
x1=0;
if(x1<0)
x1=this->Width;
label1->Location=Point(x1,label1->Location.Y);
Для второго таймера, отвечающего за задержку скорости по Y напишем следующее :
srand( (unsigned)time( NULL ) );
int z=rand();
int y1;
int q=rand()%2;
if(q==0)
z=-z;
y1=label1->Location.Y+(z%2)*2;
if(y1>this->Height)
y1=0;
if(y1<0)
y1=this->Height;
label1->Location=Point(label1->Location.X,y1);
Шаг 2. Создадим 3 свойства компонента.
public: property int Интервал_по_X{
int get() {
return (timer1->Interval);
}
void set(int val) {
if (val)
timer1->Interval=val;
else
timer1->Interval=10;
}
}
public: property int Интервал_по_Y{
int get() {
return (timer2->Interval);
}
void set(int val) {
if (val)
timer2->Interval=val;
else
timer2->Interval=10;
}
}
public: property System::String^ Текст{
System::String^ get() {
return (label1->Text);
}
void set(System::String^ val) {
if (val)
label1->Text=val;
else
label1->Text="Строка";
}
}
