Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

процедура Randomize [D7]


Tar ©   (2007-03-06 11:56:00) 

Мне нужно организовать такую вещь: на форме есть 18 панелей. При запуске
нужно чтобы 8 из этих форм случайным образом скрылись, т.е. свойство visible стало равным значению false. В итоге на форме остаётся 10 форм и прикаждом  запуске они они разные.


Tar   (2007-03-06 12:59:00) [1]

О вот это подойдёт, молодчага Megabyte


Megabyte   (2007-03-06 12:50:00) [2]

Можно проще: Пронумеровываешь свойство Tag у панелей и потом показываешь те панели, тег которых совпал с рандомом!


Desdechado   (2007-03-06 12:47:00) [3]

Вариации часто чередуются потому, что Randomize нужно вызывать всего один раз в программе, а не на каждый чих.


Ega23   (2007-03-06 12:46:00) [4]


> Подскажите адрес где скачать книгу


http://www.ozon.ru/context/detail/id/2633170/


Tar   (2007-03-06 12:42:00) [5]

Подскажите адрес где скачать книгу


Ega23   (2007-03-06 12:41:00) [6]


> А panels[j], это массив из панелей


Массив, список, цикл по существующим - это уже как тебе угодно.
Я бы список организовал, наверное.


> о как его организовать, не знал что из объектов можно организовать
> массив :(


Книжку в зубы - и вперёд.


Tar   (2007-03-06 12:34:00) [7]

А panels[j], это массив из панелей, если да, то как его организовать, не знал что из объектов можно организовать массив :(


Ega23   (2007-03-06 12:30:00) [8]


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


примерно так:
Randomize;

While(i<8) do
begin
 j := Random(18);
 if not Panels[j].Visible then Continue;
 Panels[j].Visible := False;
 inc(i);
end;


Tar   (2007-03-06 12:27:00) [9]

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


Плохиш   (2007-03-06 12:07:00) [10]

Надо знать ещё одну волшебную функцию random:-)


ЮЮ   (2007-03-06 12:05:00) [11]

После процедуры  Randomize можешь использовать функцию Random :)


Megabyte   (2007-03-06 11:59:00) [12]

И в чем проблема?


Наверх

Титульная страница Поиск, карта сайта Написать письмо