Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.01.31;
Скачать: [xml.tar.bz2];

Вниз

помогите с графикой   Найти похожие ветки 

 
lorik08 ©   (2009-12-09 15:43) [0]

Здраствуйте. Пожалуйста помогите создать приложение , в котором по нажатию кнопки "шар" в клиентской области формы случайным образом периодически появляются и исчезают разноцветные окружности(выбор цвета случаен). Через каждые 30 секунд раздается звуковой сигнал. Форма меняет цвет. Через две минуты появляется вопрос о продолжении работы.


 
Игорь Шевченко ©   (2009-12-09 15:47) [1]

Преподаватель, зараза, не помогает ?


 
lorik08 ©   (2009-12-09 15:50) [2]

какой там преподователь, учусь, то я дистанционно


 
Игорь Шевченко ©   (2009-12-09 15:52) [3]


> учусь, то я дистанционно


У форума ? Забавный метод обучения.

показывай, что сделано, в чем именно проблема.


 
йцукен   (2009-12-09 16:12) [4]


> Игорь Шевченко ©   (09.12.09 15:52) [3]
> что сделано

Видимо ничего.


 
lorik08 ©   (2009-12-09 16:16) [5]

Ну забавный ,не забавный, а помогает. а проблема в том , что не получается сделать так, чтобы окружности появлялись и исчезали , то что у меня получается не правильно, да и вообще больше ничего не понятно:

procedure TForm1.Button1Click(Sender: TObject);

begin
  // Timer.Interval в милисекундах
 Timer1.Interval := 1000+1000*Random(9); //случайно от 0 до 9
 Timer1.OnTimer := DrawCircle;
 Timer1.Enabled := True;

end;
 procedure TForm1.DrawCircle(Sender: TObject);
var
 X, Y, R: Integer;
 C: TColor;
begin
 X := Random(Min(ClientHeight, ClientWidth)); // чтобы центр не выходил за пределы клиентской части окна
 Y := Random(Min(ClientHeight, ClientWidth)); // чтобы центр не выходил за пределы клиентской части окна
 R := Random(Min(ClientHeight, ClientWidth)) div 2; // чтобы радиус был меньше половины клиентской части окна
 C := TColor(Random(MaxInt));
 Canvas.Pen.Color := C;
 Canvas.Ellipse(X-R, Y-R, X+R, Y+R);
end;

end.


 
RWolf ©   (2009-12-09 16:20) [6]


> чтобы окружности появлялись и исчезали

значит, надо хранить где-то список видимых на данных момент окружностей и периодически убирать из него самую старую и добавлять новую, после чего перерисовывать всю форму.


 
lorik08 ©   (2009-12-09 16:24) [7]

ну теперь я вообще запуталась, что-где хранить и куда это убирать, объясните пожалуйста поподробнее. а то для меня это как-то сложновато


 
Jeer ©   (2009-12-09 17:49) [8]


> что-где хранить и куда это убирать


Есть такие места, называются переменные и есть более сложные структуры данных: массивы, списки и тп.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.01.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
2-1260378529
Nostalgia
2009-12-09 20:08
2010.01.31
Классы


1-1235936478
Cobalt
2009-03-01 22:41
2010.01.31
Ограничение "mailto:" на размер &subj ?


15-1259354341
Неважно
2009-11-27 23:39
2010.01.31
Защита (идентификатор ПК) за $


1-1234880388
Константин
2009-02-17 17:19
2010.01.31
Перевод ASCI в HEX и наоборот?


15-1259186890
Германн
2009-11-26 01:08
2010.01.31
Мультизагрузка, boot.ini и иже с ними.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский