|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Динамическое изменение состояния курсора
В книжке М. Фленова описывается такой фокус:
Цитата:
Вопрос: Можно ли рандомно менять вид системного курсора, чтобы в течение определенного времени курсор последовательно принимал все перечисленные значения? |
#2
|
||||
|
||||
Можно. В чем проблема?
jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
|||
|
|||
Цитата:
проблема в том, что у меня не получается. ))) попробовал вот так: Код:
procedure TForm1.Button1Click(Sender: TObject); begin repeat randomize; setSystemCursor(GetCursor, ocr_cross); setSystemCursor(GetCursor, ocr_wait) setSystemCursor(GetCursor, ocr_up); setSystemCursor(GetCursor, ocr_normal); until true; end; end.; lmikle: пользуемся правильными тегами! но может быть, можно лучше? )) Последний раз редактировалось lmikle, 01.01.2013 в 12:21. |
#4
|
||||
|
||||
Во-первых, рандомайз внутри цикла лишен смысла. Он делается один раз при старте программы. Далее используется рандом. Во-вторых, рандомности в коде нет. Как вариант, сделать массив из всех возможных значений курсоров, в цикле брать рандом от размера этого массива и юзать полученное число как индекс курсора в массиве. Вариант 2 - посмотреть, чему соответствуют эти константы курсоров. Это будут числа, и скорее всего они будут по порядку. Поэтому можно брать рандом сразу от них. Ну и в цикле надо делать ожидание, иначе курсоры будут мигать с огромной скоростью и сольются в марево.
jmp $ ; Happy End! The Cake Is A Lie. |
#5
|
|||
|
|||
Bargest
Благодарствую. |