![]() |
|
Модераторы: PILOT |
![]()
|
|
| Bulletproof |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 28.5.2006 Репутация: нет Всего: нет |
Помогите написать программу. Её мне надо сдать 9 июня на комиссии. Очень прошу, даже молю о помощи :cry: . Вознаграждение обещаю.
Вот задание: Напишите программу - Win32 application, основное окно содержит следующие опции меню: Выход Индикаторы. Назовём "индикатором" небольшой круг с цифровым номером посередине. Программа должна отобразить в своём окне N индикаторов одинакового цвета. При нажатии пользователем левой кнопки мыши в тот момент, когда курсор помещён на один из индикаторов, программа должна «включить» индикатор – изменить его цвет, при этом другие индикаторы должны автоматически выключиться. Включённый индикатор не должен реагировать на нажатие кнопки мыши. Программа должна автоматически вернуть цвет индикатора в исходный по истечению времени задержки t. При выборе пользователем опции «Индикаторы» программа должна организовать диалог с пользователем, в рамках которого запросить число индикаторов N в диапазоне от 1 до 25. Значение по умолчанию должно быть взято из ini-файла. Программа должна помнить ранее введённое значение. Кроме этого пользователь должен иметь возможность изменять значение времени задержки t в секундах от 1 до 60. Значение по умолчанию должно быть взято из ini-файла. При изменении числа индикаторов программа должна их перерисовать заново в исходном состоянии. Изменение значения времени задержки должно влиять только на вновь включаемые индикаторы. При выборе пользователем опции «Выход» программа должна запросить пользователя, действительно ли он хочет выйти, и при утвердительном ответе обновить в ini-файле значения N и t по умолчанию на текущие значения, после этого завершить работу. Советы по программированию: 1. Начните модификацию программы с введения требуемых опций основного меню. Для этого добавьте в проект файл ресурсов. В редакторе ресурсов создайте меню MYMENU, включите меню в класс окна, проверьте его работу. 2. Обработайте в программе сообщения новых опций меню по аналогии с уже имеющимися опциями. (Для проверки при выборе пользователем новых опций меню ваша программа может выдать какое-нибудь сообщение с помощью вызова функции MessageBox). 3. В редакторе ресурсов создайте подходящий шаблон диалога, присвойте диалогу идентификатор (имя). Напишите код диалоговой функции. В начале работы диалоговой функции (событие WM_INITDIALOG) передайте в диалог исходные значения параметров (функция SetDlgItemText). По окончанию диалога перед вызовом функции EndDialog сохраните введённые значения параметров (GetDlgItemText) в переменных программы. В оконной функции активизируйте диалог (в ответ на выбор пользователем соответствующей опции меню, событие WM_COMMAND) с помощью вызова функции DialogBox. Убедитесь, что вводимые данные правильно передаются в Вашу программу. 4. Организуйте считывание исходных данных из ini-файла (функция GetPrivateProfileInt). 5. Собственно рисование индикаторов может быть выполнено как рисование круга нужного цвета (Ellipse) и вывод номера индикатора (TextOut). Для принудительной инициализации события WM_PAINT используйте функции InvalidateRect и UpdateWindow. 6. Перерисуйте индикатор нужным цветов и установите таймер (SetTimer) в ответ на выбор пользователем конкретного индикатора (событие WM_RBUTTONDOWN) и обработайте событие таймера WM_TIMER в оконной функции. 7. Обеспечьте сохранение изменённых параметров в ini-файле (функция WritePrivateProfileString) при выходе из программы как реакцию на событие WM_CLOSE. Генерируйте это событие (функция PostNessage) в ответ на утвердительный ответ пользователя о выходе из программы. Запросить пользователя (да/нет) можно с помощью функции MessageBox с параметром MB_YESNO. Очень надо!!! До 9 июня!!! Чем быстрее, тем больше сумма! |
|||
|
||||
| Denic |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 7.10.2005 Репутация: нет Всего: нет |
Могу попробовать на Delphi, пишу на [email protected], и высылай ПОДРОБНОЕ задание(че за индикаторы и т. д).
Это сообщение отредактировал(а) Denic - 6.6.2006, 10:12 |
|||
|
||||
| Moid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 396 Регистрация: 27.3.2006 Репутация: нет Всего: 3 |
Пишется такая штука менее 1 часа. А вот ещеб ты оставил свои контакты или хотябы изредка заходил бы на эту тему было бы совсем замечательно.
-------------------- "Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн |
|||
|
||||
| Bulletproof |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 28.5.2006 Репутация: нет Всего: нет |
О, клёво, буду рад если сделаешь. E-mail: [email protected] , моб. 89060618014
|
|||
|
||||
![]()
|
| Правила форума "Объявления о найме специалистов" | |
|
|
В случае невыполнения данных правил Ваши сообщения могут быть удалены без предупреждения. Полный спискок правил. С уважением, BearBeer. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Объявления о найме специалистов | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |