Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа№2_ОС (2).doc
Скачиваний:
2
Добавлен:
17.11.2019
Размер:
625.66 Кб
Скачать

Лабораторная работа №2

Работа с реестром Windows

Цель: создание диалогового приложения для операционной системы Windows NT, которое может быть запущено ограниченное число раз. Количество запусков программы хранится в реестре.

Задание: написать программу согласно варианту задания. Программа должна запускаться только три раза. Количество запусков должно храниться в реестре.

Варианты.

  1. Создать диалоговое приложение, которое при запуске запрашивает пароль. Если пароль неверен, то приложение должно автоматически закрываться.

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

  3. Создать диалоговое приложение, осуществляющее ввод строки, преобразование над ней согласно установленному режиму и вывод ее на экран по нажатию кнопки. Должны выполняться следующие преобразования: замена латинских букв на русские (кроме q, w, y, j) (режим 1); замена русских букв на латинские (кроме ё, ж, й, ч, ш, щ, ъ, ы, ь, э, ю, я) (режим 2). Режим должен задаваться при помощи радиокнопок.

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

  5. Создать диалоговое приложение, осуществляющее запись в текстовый файл последовательности из 10 целых чисел по нажатию кнопки. Программа должна работать в двух режимах: 1) генерация случайных чисел; 2) ввод чисел вручную. В первом режиме пользователем должен задаваться диапазон чисел. При изменении режима соответствующие ему элементы окна должны разблокироваться/блокироваться.

  6. Создать диалоговое приложение, осуществляющее ввод строки, в которой должны присутствовать только цифры, подсчет количества появлений каждой цифры во введенной строке и вывод результата на экран по нажатию кнопки. Если в строке были введены другие символы, должно выводиться предупредительное сообщение.

  7. Создать диалоговое приложение, позволяющее вычислять: число сочетаний, число перестановок, число размещений. Если введенные числа не соответствуют друг другу, должно выводиться предупредительное сообщение.

  8. Создать диалоговое приложение, позволяющее вычислять определенные интегралы вида: ; и , где a, b, c, n, q – рациональные числа. Если введенные числа не соответствуют друг другу, должно выводиться предупредительное сообщение.

  9. Создать диалоговое приложение, осуществляющее рисование графика функции sin(t+). Параметры  и  должны задаваться пользователем.

  10. Создать диалоговое приложение, вычисляющее значение выражения ax3+bx2+cx+d или logn x в зависимости от выбора пользователя. Значения a, b, c, d, n должны вводиться пользователем. При следующем запуске программы элементы диалогового окна должны быть заполнены последними значениями от предыдущего запуска.

  11. Создать диалоговое приложение, осуществляющее сортировку чисел в массиве по возрастанию. Массив должен задаваться пользователем. Размер массива – не более 10 чисел. Если длина массива равна нулю, должно выводиться предупредительное сообщение.

Для создания диалогового приложения необходимо создать проект CLR Windows Forms Application (пункт меню File->New->Project). В поле «Name» ввести название проекта, в поле «Location» ввести путь к каталогу, где будет создан проект (для выбора каталога можно воспользоваться кнопкой «Browse…» (рисунок 1). Поле «Solution Name» заполнится автоматически.

Рисунок 1

После создания проекта рабочая область среды будет иметь вид, показанный на рисунке 2.

Главное окно приложения

Вкладка, где расположены элементы интерфейса

Список файлов проекта

Окно «Свойства»

Рисунок 2

Созданный проект будет включать в себя файлы:

– Form1.h – в нем будет описан класс Form1, описывающий окно программы (это имя класса среда задает автоматически);

– Form1.resX, resource.h и app.rs – в них будут определены ресурсы, которые используются в классе form1;

– stdafx.h и stdafx.cpp – эти файлы создаются автоматически для формирования предкомлиллерного заголовка и типов данных;

– app.ico – иконка создаваемой программы;

– «имя созданного проекта».cpp – главный исходный файл приложения. В нем записан код, отвечающий за отображения окна программы на экране (этот код генерируется средой автоматически). В этом же файле можно прописать действия, которые должны выполняться приложением до того, как его окно будет отображено на экране;

– AssemblyInfo.cpp – в нем записаны атрибуты, которые необходимы для изменения метаданных ассемблера при создании исполняемого файла. Этот файл создается автоматически, в нем ничего изменять не надо;

– ReadMe.txt – в нем записана краткая информация о файлах проекта.

Из всех перечисленных изменять придется только файлы «имя созданного проекта».cpp и Form1.h.

Сначала необходимо разработать интерфейс приложения. Для этого с вкладки «ToolBox» необходимо перетащить необходимые элементы интерфейса на окно приложения и расположить их там в желаемом порядке.

Затем для каждого элемента необходимо задать его свойства. Для этого необходимо открыть окно Properties (см. рисунок 2) нажатием правой кнопки мыши на выбранном элементе. (Если эту вкладку не закрывать, то она останется на рабочем столе, и в ней будут отображаться свойства текущего выбранного элемента). Свойства отвечают за внешний вид элемента (размер, цвет, шрифт, видимость и т.п.), за его положение на главном окне. Значения некоторых свойств изменяются автоматически при перемещении элемента по главному окну и при изменении его размеров. При этом в файл Form1.h автоматически будет добавляться код, описывающий свойства элементов.

Затем необходимо для каждого элемента необходимо написать функции, обработчики событий, которые с ним могут произойти в приложении. Для этого необходимо перейти на вкладку Events в окне Properties (рисунок 3), выбрать там нужное событие и щелкнуть на нем мышью (двойной щелчок). При этом рядом с событием будет написано имя функции, которая будет его обрабатывать. Имя сформируется автоматически.

Вкладка Events

Вкладка Properties

Список событий

Функции-обработчики

Рисунок 3

В файле Form1.h появится выбранная функция. Внутри ее тела необходимо написать действия, которые будут выполняться при наступлении события.

Некоторые элементы интерфейса.

1. Кпопка Button.

Свойства:

– Text – надпись на кнопке;

– TextAlign – выравнивание надписи;

– Font – шрифт надписи (вид шрифта, размер, полужирный, подчеркнутый, курсив и т.п.);

– BackColor – цвет кнопки;

– BackGroundImage – картинка на кнопке;

– Visible – видимость. Если True – кнопка видна, если False – нет;

– Enabled – блокировка кнопки. Если True – кнопка незаблокирована, если False – заблокирована.

Событие:

– Click – нажатие.

2. Радиокнопка RadioButton.

– Text – надпись возле элемента;

– TextAlign – выравнивание надписи;

– Font – шрифт надписи (вид шрифта, размер, полужирный, подчеркнутый, курсив и т.п.);

– BackColor – цвет элемента;

– Image – картинка возле элемента;

– Visible – видимость. Если True – элемент виден, если False – нет;

– Enabled – блокировка элемента. Если True – элемент незаблокирован, если False – заблокирован;

– Checked – элемент выбран или нет («точка» стоит или нет). Если True – элемент выбран, если False – нет.

Событие:

– Click – нажатие;

– CheckedChanged – изменение состояния элемента (выбран или невыбран).

Для создания списка для выбора каких-то альтернатив при помощи радиокнопок их удобно расположить внутри элемента GroupBox. В этом случае при выборе какой-то радиокнопки все остальные автоматически станут невыбранными.