Перевод текста в другую раскладку клавиатуры
Функциональные возможности, предоставляемые Windows API. Услуги, дополнительные службы, графический и пользовательский интерфейсы устройства, библиотеки управления. Программа перевода текста в другую раскладку клавиатуры. Тестирование программы "TrueKey".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 13.06.2012 |
Размер файла | 459,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
СОДЕРЖАНИЕ
Введение
1. Обзор литературы
2. Системное проектирование
3. Функциональное проектирование
- 4. Обзор проекта
Заключение
Список использованной литературы
- Введение
- Персональные компьютеры прочно входят в современный ритм жизни. Компьютер является неотъемлемой частью производственного процесса многих предприятий, контролирующей системой, системой хранения информации. Компьютер также позволяет обучаться различным отраслям науки, а также общаться с удаленными людьми.
- С самых ранних версий персональных компьютеров клавиатура занимает ведущее место среди устройств ввода данных. При вводе символов, пользователь используют одну из нескольких тысяч раскладок клавиатуры, хотя при наборе одного документа может возникать необходимость использовать и другие раскладки клавиатуры. Зачастую пользователь забывает переключить раскладку клавиатуры, или неправильно использует комбинацию переключения раскладки клавиатуры (к примеру, вместо комбинации ctrl+shift будут последовательно нажаты клавиши ctrl,shift). Не заметив этого момента, пользователь продолжит набирать текст, и вместо правильного «Hello, World!»получится «Руддщб Цщкдв!». Подобные ситуации распространены при работе с двумя и более приложениями (браузер и блокнот к примеру). Подобные казусы снижают скорость работы с текстом, а также раздражают пользователя, так как в большинстве случаев приходится перенабирать текст в нужной раскладке.
- Мною была создана программа«Truekey» для исправления текста, написанного в раскладке, отличной от правильной. Она позволяет работать как в текстовых редакторах (блокнот, например), так и в адресной строке браузера. Программа работает в трех режимах: изменение всего текста в поле ввода, изменение выделенного текста и изменение текста в буфере обмена.
1. Обзор литературы
Windows API (англ. application programming interfaces) -- общее наименование целого набора базовых функций интерфейсов программирования приложений операционных систем семейств Windows и Windows NT корпорации «Майкрософт». Является самым прямым способом взаимодействия приложений с Windows. Для создания программ, использующих Windows API, «Майкрософт» выпускает SDK, который называется Platform SDK и содержит документацию, набор библиотек, утилит и других инструментальных средств.
Windows API был изначально спроектирован для использования в программах, написанных на языке C (или C++). Работа через Windows API -- это наиболее близкий к системе способ взаимодействия с ней из прикладных программ.[2] Так же иногда использование функции WinApiпозволяет значительно ускорить выполнение программ написанных на языках высокого уровня. Использование этих функции происходит с помощью подключения библиотеки kernel32.dll.
Функциональные возможности, предоставляемые Windows API могут быть сгруппированы в восемь категорий:
· Базовые услуги. Обеспечение доступа к основным ресурсам, имеющихся в системе Windows. Включены такие вещи, как файловые системы, устройства, процессы и события, и обработки ошибок. Эти функции находятся в KERNEL.EXE, krnl286.exe или KRNL386.EXE файлах на 16-битных Windows, и в kernel32.dll на 32-битных Windows.
· Дополнительные службы. Обеспечить доступ к дополнительную функционалу ядра. Включены такие вещи, как реестр Windows, выключение / перезапуск системы (или перезагрузка), запуск / остановка / создание службы Windows, управление учетными записями пользователей. Эти функции находятся в advapi32.dll на 32-битных Windows.
· Графический интерфейс устройства. Предоставляются функциональные возможности для вывода графического содержимого на мониторах, принтерах и других устройствах вывода. Находятся в GDI.EXE на 16-битных Windows, и gdi32.dll на 32-битных Windows в пользовательском режиме. В режиме ядра GDI поддержку оказывает win32k.sys, который общается непосредственно с графическими драйверами.
· Пользовательский интерфейс. Обеспечивает функциональность для создания и управления окнами Windows и основными элементами управления, такие как кнопки и полосы прокрутки, обработка мыши и клавиатуры, и другие функции, связанные с GUI частью Windows. Этот функциональный блок находится в USER.EXE на 16-битных Windows, и user32.dll на 32-битных Windows. С версии Windows XP, основные элементы управления находятся в comctl32.dll, вместе с общим управления (Common Control Library).Библиотека Common Dialog Box. Предоставляет применения стандартных диалоговых окон открытия и сохранения файлов, выбор цвет и шрифта, и т.д. Библиотека находится в файле под названием commdlg.dll на 16-битных Windows, и comdlg32.dll на 32-битных Windows. Это сгруппированы по категории Интерфейс Пользователя API.
· Общие библиотеки управления. Дает приложениям доступ к некоторым современные средства управления, предоставляемые операционной системой. Они включают такие вещи, как статус бары, индикаторы, панели инструментов и вкладки . Библиотека находится в DLL файл commctrl.dll на 16-битных Windows, и comctl32.dll на 32-битных Windows. Они сгруппированы в категории Интерфейс Пользователя API.Windows Shell. Компонент Windows API позволяет приложениям получать доступ к функциональным возможностям операционной оболочки системы, а также изменять и улучшать ее. Компонент находится в shell.dll на 16-битных Windows, и shell32.dll на 32-битных Windows. Shell Lightweight Utility Functions находятся в Shlwapi.dll. Они сгруппированы в категории Интерфейс Пользователя API.
· Сетевые службы. Предоставить доступ для различных возможности сети, в которой находится операционная система. Ее подкомпоненты включают NetBIOS, Winsock, NetDDE, RPC и многие другие.[3]
Наболее популярной программой с подобным функционалом является программа «Punto switcher». Она позволяет автоматически при наборе текста переключать неправильно набранные слова в другую раскладку. Однако большим недостатком является то, что эта программа отслеживает набранные символы и сверяет набранные комбинации со своим словарем, что, при недостаточном обучении, приводит к частому ошибочному переводу текста. Особенно это заметно при наборе узкоспециального текста. Моя программа управляется полностью пользователем, что позволяет контролировать переключение, используя горячие клавиши.
·
2. Системное проектирование
2.1 Постановка задачи
Необходимо разработать программу перевода текста в другую раскладку клавиатуры.
При создании модели должны быть учтены:
ь возможность дальнейшего создания новых функций;
ь интуитивно понятный интерфейс;
ь сохранения параметров;
ь минимизация главного окна программы при работе в текстовых редакторах;
2.2 Диаграмма классов
Рисунок 2.1 - Диаграмма классов
2.3 Разработка диаграммы вариантов использования
Диаграмма вариантов использования (см. рисунок 2.2) представляет собой возможные варианты использования программы перевода текста.
Рисунок 2.2 - Диаграмма вариантов использования
3. Функциональное проектирование
В этом разделе будет рассмотрены наиболее важные классы проекта. Все классыотносятся, в соответствии с шаблоном, к одному из компонент «Модель-представление-поведение»
Для доступа к содержимому текстовых полей и буферу обмена использовались методы WinApi.
3.1 Класс CTransfApp
Являетсяглавным классом.В нем происходит проверка на открытие второй копии программы, подключение к реесту и вызов основной формы.
3.2 Класс CAboutDlg
Класс формы «О программе». Наследован от класса CDialog.
3.3 Класс CTransfDlg
Класс главной формы. Содержит элементы управления работой программы, а также обработчики событий и текста.
Содержитметоды:
public virtual void DoDataExchange(CDataExchange* pDX) -
метод обмена данных с диалоговым окном.
LRESULT OnHotKey(WPARAM wParam, LPARAM lParam) - обработчик нажатия горячих клавиш.
LRESULT OnNotifyIcon(WPARAM wParam, LPARAM lParam)-обработчик развертывания из системного трея.
void OnPaint() - метод отрисовки.
void OnDo() - обработчик нажатия кнопки «RUN».
void OnButton1() - обработчик нажатия кнопки «О программе».
void OnDo2() - обработчикнажатиякнопки «RUN and Hide».
void OnDestroy() -обработчик деструктора.
void OnClose() - обработчик события закрытия.
void SetRu() - метод установки русской раскладки.
void Change(LPTSTR lpData) - функция перевода текста.
void Changeclip() - функция изменения текста в буфере обмена.
BOOL CALLBACK EXPORT EnumChildProc(HWND hwnd, LPARAM lParam)- функция обработки текста, в зависимости от режима работы.
4.Обзор проекта
4.1 О программе
Программа создана для работы в фоне, для чего была создана с минимальным интерфейсом и возможности скрытия в панель уведомлений.
4.2 Главное окно
Главное окно представляет собой набор управляющих переключателей, кнопки запуска, выхода и просмотра информации о программе.
Рисунок 4.1 - Главное окно
4.3Окно «О программе»
Окно предоставляет информацию об авторе.
Рисунок 4.2 Форма «Опрограмме»
4.4Тестирование программы
Программа «TrueKey» была протестирована в 64-разряднойоперационнойсистемеWindows 7 наPCспроцессоромAMDAthlon 64X2 2.30 ГГциОЗУ4ГБ.
Разработано и скомпилировано в MicrosoftVisualStudio 2010Version10.0.30319.1 RTMRelRus. Версия Microsoft .NETFramework - 4.0.30319 RTMRel.
Ошибок в работе программы выявлено не было.
4.5Особенности работы программы
· Работает только в операционной системе Windows
· Сохраняет параметры в реестре
· В режиме изменения выделенного текста не изменяет содержимого буфера.
ЗАКЛЮЧЕНИЕ
программа раскладка клавиатура
В результате разработки проекта было реализовано приложение «Truekey» для трансформации текста в другую раскладку клавиатуры.
Основной упор при разработке программы делался на сохранение расширяемости проекта, а так же работу в фоновом режиме.
Понятный интерфейс позволяет за короткое время настроить и приступить к использованию программы.
Доступ к буферу осуществляется посредством функций WindowsAPI.
Список использованной литературы
[1] Джеффри Рихтер, К. Назар, 2009.Windows via C/C++. Программирование на языке Visual C++.
[2] Библиотека MSDN (по-русски) [Электронный ресурс]. - Электронные данные. - Режим доступа: http://msdn.microsoft.com/ru-ru/library/ms123401.aspx.
[3] Работа с буфером обмена в ОС Windows [Электронный ресурс] - http://msdn.microsoft.com/ru-ru/library/c2thcsx4.aspx.
[4] WinAPI [Электронный ресурс]. - Электронные данные. - Режим доступа:http://ru.wikipedia.org/wiki/WinAPI.
[5] WindowsAPI [Электронный ресурс]. - Электронные данные. - Режим доступа:http://en.wikipedia.org/wiki/Windows_API.
Размещено на Allbest.ru
Подобные документы
Системы счисления: понятие и содержание, классификация и типы, отличительные свойства и принципы. Перевод чисел из одной системы счисления в другую, виды программного обеспечения. Возможности программы сканирования и распознавания текста Fine Reader.
контрольная работа [37,2 K], добавлен 15.12.2013Изучение основных приемов работы с текстовым и графическим редакторами. Операции, которые позволяет выполнять графический редактор Paint. Создание и сохранение текстовых документов в Блокноте. Ввод фрагмента текста с клавиатуры и его редактирование.
контрольная работа [279,3 K], добавлен 12.03.2011Разработка и практическая апробация действия драйвер-фильтра клавиатуры для операционной системы Windows, переопределяющего значение любых клавиш и отключающего клавиши клавиатуры. Составление программы для установки и управления данным драйвером.
курсовая работа [226,8 K], добавлен 18.06.2009Понятие и цель применения текстовых данных. Принцип кодирования азбуки Морзе. Основные методы языка высокого уровня C#. Алгоритм работы, листинг, тестирование программы для перевода текста в последовательность кодов азбуки Морзе. Руководство пользователя.
курсовая работа [1,4 M], добавлен 15.01.2013Функции графического редактора Paint, создание рисунка (задание размера, изменение цвета). Возможности программы "Калькулятор". Работа с блокнотом, ввод текста с помощью клавиатуры. Текстовый процессор WordPad: простейшие приемы форматирования документов.
контрольная работа [434,3 K], добавлен 17.11.2011Разработка программы, аналога Paint системы Windows, с функциями открытия изображения в графическом редакторе и его сохранения, написания текста в любом указанном мышкой месте, изменения шрифта, размера и цвета текста на языке программирования Delphi.
курсовая работа [278,5 K], добавлен 06.04.2014Эволюция компьютерной клавиатуры: рождение, телетайп, первые клавиатуры, емкостная клавиатура. Виды клавиатур: АТРасширенная, жесткоконтактная, АТХ-клавиатуры, мультимедийные и Win-клавиатуры. Эргономика клавиатур. Защита от пользователя.
реферат [22,1 K], добавлен 09.11.2007Перевод - процесс создания на основе исходного текста на одном языке равноценного ему в коммуникативном отношении текста на другом языке, требования к обеспечению его эквивалентности. Машинные технологии перевода; характеристика систем Translation Memory.
презентация [347,8 K], добавлен 06.01.2014Описание логической структуры программы "perevod" для перевода числа из одной системы счисления в другую. Блок-схема алгоритма обработчика события Button1Click. Разработка и испытание приложений. Назначение и условия применения программы, листинг.
курсовая работа [945,5 K], добавлен 03.01.2011Виды операционных систем. Графический пользовательский интерфейс операционной системы Linux и Mac OS. Функции устройства управления окнами (windows manager). Программа управления файлами, драйвера, модуль управления памятью - основные компоненты ядра.
презентация [1,8 M], добавлен 14.10.2013