Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на C / C++


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

_Ayl_
Статус: Студент
Рейтинг: 1279
∙ повысить рейтинг »
Micren
Статус: Бакалавр
Рейтинг: 788
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 593
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Номер выпуска:1389
Дата выхода:21.09.2009, 08:00
Администратор рассылки:Dr_Andrew, Модератор
Подписчиков / экспертов:641 / 166
Вопросов / ответов:1 / 1
IRC-канал по теме:#C

Вопрос № 172194: Написать программу, реализующую электронный органайзер. Реализовать возможности добавления, удаления, редактирования и хранения данных. Предусмотреть обработку всех возможных ошибок. ...



Вопрос № 172194:

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

Отправлен: 15.09.2009, 13:25
Вопрос задал: Aniram79, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Dr_Andrew, Модератор :
Здравствуйте, Aniram79!
Вы не указали операционную систему, в которой должна работать программа, и среду разработки приложения; электронный органайзер был написан с использованием классов кроссплатформенной библиотеки Nokia Qt 4.4.3 для создания графического интерфейса пользователя и реализации логики приложения. Программа получилась достаточно большой (1005 строк кода), поэтому разместил код не в приложении, а даю ссылку на архив с исходными текстами: исходные тексты QOrganizer. Исполняемые файлы программы (GNU Linux Debain 5 и Windows XP - 4,3 Мб) можно загрузить по этой ссылке.
При разработке приложения исходил из определения электронного органайзера как компьютерной программы, включающей в себя как минимум 3 части: календарь, адресную книгу и средство для создания заметок.
Главное окно приложения (клас с TMainForm) в качестве центрального виджета устанавливает объект класса TCentralWidget, который предоставляет вкладки, управляющие 3 виджетами: TCalendarWidget (обеспечивает календарь), TAddressBookWidget (обеспечивает адресную книгу) и TMemoWidget.
Объект класса TCalendarWidget предоставляет возможность выбора даты как с помощью поля даты, так и собственно календаря. Синхронизация дат в этих виджетах осуществляется с помощью слотов void SetCalendarDateSlot(QDate); и void SetEditDateSlot(QDate);
Нажатие кнопки pTodayButton осуществляет установку дат на "сегодня":



Класс TAddressBookWidget предоставляет возможность добавления нового контакта (функция void AddContact();) и удаления выделенного контакта (функция void DeleteContact();) с использованием QStandardItemModel (за отображение инфо рмации отвечает представление QTableView):



Использование концепции модель - представление (model - view) позволяет в будущем расширять функциональность приложения (например, создание формы поиска контакта) без изменения логики хранения данных.
Для загрузки и сохранения данных используется DOM-дерево (данные сохраняются в XML-файл).
Контроль за изменением данных в загруженном списке контактов осуществляется логической переменной bool bEdited = false; класса:



Класс TMemoWidget обеспечивает загрузку, редактирование и сохранение простого текста (plain text). Впрочем, возможности виджета позволяют работать с форматированным текст ом при минимальном изменении кода. Используемая кодировка - UTF8.



Удачи!

Ответ отправил: Dr_Andrew, Модератор
Ответ отправлен: 19.09.2009, 14:08
Казахстан, Алма-Ата
Организация: Казахский научный центр карантинных и зоонозных инфекций
Адрес сайта: Медицинские программы для Linux
ICQ # 256452186

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 254376 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.8 от 28.08.2009

    В избранное