Задание №4 «Текстовый процессор MS WORD »
Оглавление Задание №1 «Архитектура персонального компьютера» Задание №2 «Операционная сиcтема WINDOWS 9.x» Задание №3 «Объектно-ориентированная платформа WINDOWS» Задание №4 «Текстовый процессор MS WORD» Задание №5 «Табличный процессор EXCEL» Задание №6 «Глобальная сеть INTERNET. Сервисное программное».
Задание №1 «Архитектура персонального компьютера»
Внешняя память Внешняя (долговременная) память — это место длительного хранения данных (программ, результатов расчётов, текстов и т.д.), не используемых в данный момент в оперативной памяти компьютера. Внешняя память, в отличие от оперативной, является энергонезависимой. Носители внешней памяти, кроме того, обеспечивают транспортировку данных в тех случаях, когда компьютеры не объединены в сети (локальные или глобальные). Для работы с внешней памятью необходимо наличие накопителя (устройства, обеспечивающего запись и (или) считывание информации) и устройства хранения — носителя. Основные виды накопителей: накопители на гибких магнитных дисках (НГМД); накопители на жестких магнитных дисках (НЖМД); накопители CD-ROM, CD-RW, DVD. Им соответствуют основные виды носителей: гибкие магнитные диски (Floppy Disk) (диаметром 3,5’’ и ёмкостью 1,44 Мб; диаметром 5,25’’ и ёмкостью 1,2 Мб (в настоящее время устарели и практически не используются, выпуск накопителей, предназначенных для дисков диаметром 5,25’’, тоже прекращён)), диски для сменных носителей; жёсткие магнитные диски (Hard Disk); диски CD-ROM, CD-R, CD-RW, DVD. Запоминающие устройства принято делить на виды и категории в связи с их принципами функционирования, эксплуатационно-техническими, физическими, программными и др. характеристиками. Так, например, по принципам функционирования различают следующие виды устройств: электронные, магнитные, оптические и смешанные – магнитооптические. Каждый тип устройств организован на основе соответствующей технологии хранения/воспроизведения/записи цифровой информации. Поэтому, в связи с видом, и техническим исполнением носителя информации, различают: электронные и дисковые.
Основные характеристики накопителей и носителей: информационная ёмкость; скорость обмена информацией; надёжность хранения информации; стоимость. Задание №2 «Операционная си c тема WINDOWS 9. x»
Подменю «Настройка». Меню Пуск, подменю Настройка NoSetActiveDesktop Скрыть Рабочий стол Active Desktop NoFolderOptions Скрыть Свойства папки NoSetFolders Скрыть Принтеры и Панель управления NoSetTaskbar Скрыть Панель задач и меню Пуск NoNetworkConnections Скрыть Удаленный доступ к сети Меню Пуск, подменю Настройка, пункт Принтеры NoPrinterTabs Скрыть некоторые вкладки в диалоге Свойства: принтер NoDeletePrinter Запретить удаление принтера. NoAddPrinter Запретить добавление принтера. Рабочий стол NoDesktop Отключить Рабочий стол ClassicShell Сделать вид похожим на Win 95 NoInternetIcon Скрыть значок Интернет NoNetHood Скрыть Сетевое Окружение NoStartBanner Отключить "Начните работу с нажатия этой кнопки" NoActiveDesktop Отключить Active Desktop NoActiveDesktopChanges Запретить изменения на Active Desktop Разное NoFileMenu Убирает меню Файл в Explorer и IE NoSaveSettings Запретить сохранение установок NoDrives Скрыть все диски в Мой компьютер (FF FF FF FF). В зависимости от значения скрываются разные буквы дисков, 00 00 00 00 - не скрыт ни один. RestrictRun Если доступ к приложениям ограничен для текущего пользователя, то раздел содержит параметр RestrictRun, который имеет значение 0х00000001. Имена
приложений, доступ к которым разрешен для данного пользователя, хранятся в подразделе HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\RestrictRun. Записи в этом подразделе пронумерованы, начиная с 1, и содержат строки с путями (необязательно) и именами приложений. Доступ для текущего пользователя разрешен только к тем приложениям, которые упоминаются в подразделе RestrictRun. NoLowDiskSpaceChecks Не выводить сообщение о нехватке места на диске HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\ActiveDesktop NoComponents Убрать Каналы Веб с Рабочего стола NoAddingComponents Запретить добавлять Каналы Веб NoClosingComponents Запретить закрывать Каналы Веб NoDeletingComponents Запретить удалять каналы Веб NoEditingComponents Запретить изменять каналы Веб NoChangingWallpaper Запретить смену обоев Задание №3 «Объектно-ориентированная платформа WINDOWS»
Операции с окнами. Операции над окнами Манипулировать окнами можно не только с помощью атрибутов: Xlib предоставляет набор функций для изменения их размеров, перемещения на экране и в стеке окон, сворачивания и т.п. Первая пара операций, которые можно применить к окну - отображение или скрытие. Отображение окна заставляют окно появиться на экране, скрытие приводит к удалению с экрана (хотя логическое окно в памяти все еще существует). Например, если в вашей программе есть диалоговое окно, вместо создания его каждый раз по запросу пользователя, мы можем создать окно один раз в скрытом режиме и, когда пользователь запросит открыть диалог, просто отобразить окно на экране. Когда пользователь нажимает "OK" или "Cancel", окно скрывается. Это значительно быстрее создания и уничтожения окна, однако стоит ресурсов, как на стороне клиента, так и на стороне X сервера. Отображение окна может быть выполнено с помощью XMapWindow(), скрытие - с помощью XUnmapWindow(). Функция отображения заставит событие Expose послаться программе, если только окно полностью не закрыто другими окнами. Другое действие, которое можно выполнить над окнами - переместить их в другую позиции. Это может быть выполнено функцией XMoveWindow(), которая принимает новые координаты окна. Имейте в виду, что после перемещения окно может быть частично скрытым другими окнами (или наоборот, открыто ими), и таким образом, может быть сгенерировано сообщение Expose.
Изменить размер окна можно с помощью функции XResizeWindow(). Мы можем также объединить перемещение и изменение размеров, используя одну функцию XMoveResizeWindow(). Все приведенные выше функции изменяли свойства одного окна. Существует ряд свойств, связанных с данным окном и другими окнами. Одно из них - порядок засылки в стек: порядок, в котором окна располагаются друг над другом. Говорят, что окно переднего плана находится на верхе стека, а окно заднего плана - на дне стека. Перемещение окна на вершину стека осуществляет функция XRaiseWindow(), перемещение окна на дно стека - функция XLowerWindow(). С помощью функции XIconifyWindow() окно может быть свернуто, а с помощью XMapWindow() - восстановлено. Для того, чтобы понять, почему для XIconifyWindow() нет обратной функции, необходимо заметить, что, когда окно сворачивается, на самом деле оно скрывается, а вместо него отображается окно иконки. Таким образом, чтобы восстановить исходное окно, нужно просто отобразить его снова. Иконка является на самом деле другим окном, которое просто тесно связано сильно с нашим нормальным окном - это не другое состояние нашего окна. Следующий пример демонстрирует использование операций над окнами: uses x,xlib,xutil,crt,dos; (* create_simple_window - создает окно с белым фоном заданного размера. Принимает в качестве параметров дисплей, размер окна (в пикселях) и положение окна (также в пикселях). Возвращает дескриптор окна. Окно создается с черной рамкой шириной в 2 пикселя и автоматичсеки отображается после создания.*) function create_simple_window(display: PDisplay; width, height, x, y: integer): TWindow; var screen_num, win_border_width: integer; win: TWindow; begin screen_num:= XDefaultScreen(display); win_border_width:= 2; (* создаем простое окно как прямой потомок корневого окна экрана, используя черный и белый цвета в качестве основного и фонового, и размещая новое окно в верхнем левом углу по заданным координатам*) win:= XCreateSimpleWindow(display, XRootWindow(display, screen_num), x, y, width, height, win_border_width, XBlackPixel(display, screen_num), XWhitePixel(display, screen_num)); (* Отображаем окно на экране. *)
XMapWindow(display, win); (* Заставляем выполниться все запросы к Х серверу. *) XFlush(display); create_simple_window:=win; end; //void main(int argc, char* argv[]) var display: PDisplay; (* указатель на структуру дисплея Х *) screen_num: integer; (* количество экранов для размещения окон *) win: TWindow; (* дескриптор создаваемого окна *) display_width, display_height: word; (* высота и ширина Х дисплея *) win_width, win_height: word; (* высота и ширина нового окна *) display_name: array [0..30] of Char; name: string; i: integer; win_attr: TXWindowAttributes; xx, y, scr_x, scr_y: integer; child_win: TWindow; (* переменная для хранения дескриптора родительского окна *) parent_win: TWindow; (* эта переменная будет хранить дескриптор корневого окна *) (* экрана, на котором отображено наше окно *) root_win: TWindow; (* эта переменная будет хранить массив дескрипторов *) (* дочерних окон нашего окна, *) child_windows: PWindow; (* а эта - их количество *) num_child_windows: integer; begin name:= getenv('DISPLAY'); (* имя Х дисплея *) for i:=1 to byte(name[0]) do display_name[i-1]:=name[i]; display_name[byte(name[0])]:=#0; (* устанавливаем соединение с Х сервером *) display:= XOpenDisplay(display_name); if (display = NIL) then begin writeln(paramstr(0),': не могу соединиться с Х сервером ', display_name); halt(1); end; (* получаем геометрию экрана по умолчанию для нашего дисплея *) screen_num:= XDefaultScreen(display); display_width:= XDisplayWidth(display, screen_num); display_height:= XDisplayHeight(display, screen_num); (* создаем новое окно в 1/9 площади экрана *) win_width:= (display_width div 3); win_height:= (display_height div 3); (* отладочная печать в стандартный вывод *) writeln('ширина окна - ', win_width, '; высота - ', win_height); (* создаем простое окно как прямой потомок корневого окна экрана, *) (* используя черный и белый цвета в качестве основного и фонового, и*) (* размещая новое окно в верхнем левом углу по заданным координатам *) win:= create_simple_window(display, win_width, win_height, 0, 0); XFlush(display); (* отдохнем после трудов праведных *) delay(3000); (* пример изменения размеров окна *) begin (* в цикле уменьшаем окно *) for i:=0 to 39 do begin dec(win_width,3); dec(win_height,3); XResizeWindow(display, win, win_width, win_height); XFlush(display); delay(20); end; (* в цикле увеличиваем окно *) for i:=0 to 39 do begin inc(win_width,3); inc(win_height,3); XResizeWindow(display, win, win_width, win_height); XFlush(display); delay(20); end; end; delay(1000); (* пример перемещения окна *) begin (* вначале получаем текущие атрибуты окна *) XGetWindowAttributes(display, win, @win_attr); xx:= win_attr.x; y:= win_attr.y; (* затем находим окно родителя *) begin (* выполним запрос необходимых значений *) XQueryTree(display, win, @root_win, @parent_win, @child_windows, @num_child_windows); (* мы должны освободить список дочерних дескрипторов, *) (* так как он был динамически выделен XQueryTree() *) XFree(child_windows); end; (* Транслируем локальные координаты в экранные, используя *) (* корневое окно как окно, относительно которого выполняется *) (* трансляция. Это работает потому, что корневое окно всегда *)
(*занимает весь экран, и его левый верхний угол совпадает *) (* с левым верхним углом экрана *) XTranslateCoordinates(display, parent_win, win_attr.root, xx, y, @scr_x, @scr_y, @child_win); (* перемещаем окно влево *) for i:=0 to 39 do begin dec(scr_x,3); XMoveWindow(display, win, scr_x, scr_y); XFlush(display); delay(20); end; (* перемещаем окно вниз *) for i:=0 to 39 do begin inc(scr_y,3); XMoveWindow(display, win, scr_x, scr_y); XFlush(display); delay(20); end; (* перемещаем окно вправо *) for i:=0 to 39 do begin inc(scr_x,3); XMoveWindow(display, win, scr_x, scr_y); XFlush(display); delay(20); end; (* перемещаем окно вверх *) for i:=0 to 39 do begin dec(scr_y,3); XMoveWindow(display, win, scr_x, scr_y); XFlush(display); delay(20); end; end; delay(1000); (* пример сворачивания и восстановления окна *) begin (* сворачиваем окно *) XIconifyWindow(display, win, XDefaultScreen(display)); XFlush(display); delay(2000); (* восстанавливаем окно *) XMapWindow(display, win); XFlush(display); delay(2000); end; XFlush(display); (* короткая передышка *) delay(2000); (* закрываем соединение с Х сервером *) XCloseDisplay(display); end.
Задание №4 «Текстовый процессор MS WORD»
Создание таблицы. Перемещение по таблице. Вставка строк и столбцов в таблицу. Сортировка данных в таблице. Изменение ширины и высоты ячеек. Создание таблицы Создание новой таблицы можно осуществить тремя способами: Нарисовать Вставить Создание на основе существующих данных (текста, чисел) 1. Нарисовать (создать) таблицу Для создания таблицы со сложным заголовком целесообразно использовать способ Нарисовать таблицу, выбрав команду Таблица / Нарисовать таблицу. Появится плавающая панель инструментов Таблицы и границы, с помощью которой можно создать таблицу и осуществить ее редактирование и форматирование.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|