Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Создание прибыльного сайта для начинающих" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Октябрь 2005 → | ||||||
2
|
||||||
---|---|---|---|---|---|---|
3
|
4
|
5
|
6
|
7
|
9
|
|
10
|
11
|
12
|
13
|
14
|
16
|
|
17
|
18
|
19
|
20
|
21
|
23
|
|
24
|
25
|
26
|
27
|
28
|
30
|
|
31
|
Статистика
0 за неделю
Интернет для Delphi-программиста
Информационный Канал Subscribe.Ru |
Интернет для Delphi программиста.Выпуск : № 38 Здравствуйте уважаемые подписчики рассылки "Интернет для Delphi программиста". Данная рассылка предназначена для всех кого интересует Delphi, здесь будут выкладываться ссылки на различные ресурсы интернета так или иначе связанные с Delphi: книги, исходники, программы... Изучайте Delphi один из лучших языков программирования!!! ЗАДАТЬ ВОПРОС : Правила
рассылки: Новые вопросы.
Ответы.
Статья: Работа с таймером на Win API. http://decoding.narod.ru/api/timer/timer.html ![]() Таймер - вещь в хозяйстве очень полезная. Если некое действие нужно повторять с определенной периодичностью, то таймер, это как раз то, что нужно. Если вдруг мы захотим приколоться над другом, то с помощью таймера можно сделать кучу прикольных вещей. Например: перемещать по рабочему столу иконки (или курсор мыши), выдвигать лоток сидюка, запускать программы (или вырубать их) и многое другое. Но сегодня мы никому вредить не будем, а просто посмотрим, как же работать с таймером. По традиции начнем с переменных.
В этот раз переменных много, мы рассмотрим их все по мере того, как будем разбираться в программе. Из констант видно, что у нас будет два таймера и три метки. Что мы будем с ними делать? Первый таймер будет получать информацию о дате и времени на компьютере, и выводить ее на три метки в следующем виде: первая метка - день недели, вторая метка - дата, третья метка - время. Второй таймер будет перемещать метки по форме в горизонтальном направлении, (метки будут как бы отскакивать от краев формы). Чтобы создать таймер, нужно воспользоваться функцией SetTimer.
Рассмотрим параметры этой функции. Первый - идентификатор окна, которому будет принадлежать таймер. Второй - идентификатор самого таймера. Третий - интервал, через который таймер будет посылать окну, которому он принадлежит, сообщение WM_TIMER. Интервал задается в миллисекундах, из расчета, что в одной секунде тысяча миллисекунд. Четвертый - указатель на процедуру TimerProc (подробности смотри в хелпе). При выходе из программы таймеры нужно уничтожить. Для этого надо воспользоваться функцией KillTimer. Ее два параметра аналогичны первым двум параметрам функции SetTimer.
Для "взаимодействия" с таймером нужно обрабатывать сообщение WM_TIMER.
Идентификатор таймера находится в параметре wParam сообщения WM_TIMER, здесь все просто. Посмотрим, что делает каждый таймер. Первый таймер отвечает за перемещение меток по форме. Направление перемещения зависит от значения переменной Direction и осуществляется функцией SetWindowPos. Второй таймер занимается тем, что получает текущую дату и время. Для этого нужно воспользоваться процедурой GetLocalTime, в качестве параметра ей нужно передать переменную типа TSystemTime, в которую будет помещен результат. Для того чтобы вывести полученные значения в метки, их (значения) нужно перевести из чисел в строки. В этом нам поможет процедура Str. У нее два параметра: что переводим и куда будет помещен результат. Чтобы изменить текст метки (или любого другого элемента или окна), используем процедуру SetWindowText. У нее два параметра: идентификатор окна (элемента окна), текст которого следует изменить, и сам текст. И напоследок посмотрим, как создается форма в этом примере.
Раньше, в качестве флага мы указывали WS_OVERLAPPEDWINDOW, который включает в себя следующие флаги - WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, WS_MAXIMIZEBOX. В этом примере мы выкинули два флага: WS_MAXIMIZEBOX (делает неактивной кнопку максимизации окна) и WS_THICKFRAME (или WS_SIZEBOX, что одно и то же. Без него мы не сможем изменять размеры формы мышкой). Это упрощение сделано для того, чтобы не производить дополнительные вычисления при изменении ширины формы, что необходимо для правильной работы первого таймера. На сегодня это все, удачи в программировании. .:
Пример к данной статье :. Компоненты: Компонент, обладающий большими возможностями по сравнению с TMemo. Компонент, позволяющий добавлять в свое приложение окно с советами, появляющееся при старте. Компонент для размещения на формах жидкокристаллических индикаторов Компонент для размещения анимации на формах. Набор невизуальных компонентов для работы с генетическими алгоритмами Набор невизуальных компонентов для работы с нейросетями. Обширный набор математических функций. Файл справки прилагается. Интересный компонент, "оживляющий" стандартные формы EhLib 3.6 содержит компоненты и классы для
Borland Delphi 4-9 и C++ Builder 4-6, направлена на
расширение возможностей клиентской
части программы базы данных, при
взаимодействии пользователя с
приложением Бесплатные компоненты для доступа к БД Oracle, MSSQL, MySQL, DB2, Sybase ASA, MSAccess, dbExpress и ODBC. Компонент эмитирует титры, как в фильмах. Не всегда удобно читать и писать файлы стандартными методами. Часто приходится загружать файл в память и только потом использовать его, что отнимает очень много времени. А как хорошо было бы работать с фалом сразу же без загрузки, как с памятью! Ось же умеет делать это. Классический пример такой работы - файл подкачки, с которым система работает как с оперативной памятью. Однако некоторые программисты не используют функции отображения файлов в памяти из-за их "сложности". Этот компонент максимально упрощает задачу. Очень часто нужно иметь возможность внутри программы перетаскивать объекты из одного компонента в другой. Например, нужно перетаскивать строки между двумя ListBox.ами. Задача несложная, но нудная, особенно если решать ее по всем правилам с правильными курсорами. Интересные и полезные сайты по Delphi: Если Вы хотите, чтобы Ваш сайт был в этом разделе пишите.
Немного юмора: :))
Дружественные рассылки: Все
кто хочет изучить Delphi и реально
научиться писать свои программы, ЦПИ "Эверест"
поможет Вам. 10 причин в пользу платного обучения в ЦПИ "Эверест"… 1. Когда Вы
платите деньги-
появляется дополнительный стимул
против лени: надо учиться, ведь деньги
уже уплачены….
5. Стоимость обучения
одного месяца в ЦПИ "Эверест"
сравнима с ценой хорошей книги. Но часто
ли Вам попадались книги, рассчитанные
именно на Вас. Мы же работаем
индивидуально.
8. А это значит, что …Мы
предлагаем получить "высшее
образование" - профессию
программиста всего за
1 год и 144 доллара, любой ВУЗ
попросит в 3 раза больше за один только
семестр. По всем вопросам обращайтесь ко мне. Если вы встретили в интернете
интересный сайт или статью, да и вообще, что угодно
связанное с Delphi, поделитесь ссылкой. Предложения, критику и пожелания пишите на e-mail. |
Subscribe.Ru
Поддержка подписчиков Другие рассылки этой тематики Другие рассылки этого автора |
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiinternet Архив рассылки |
Отписаться
Вспомнить пароль |
В избранное | ||