Что отображается в строке состояния окна. Строка состояния. Справочная система Word

LPTBNOTIFY ptbn =(LPTBNOTIFY) lParam; switch(ptbn->iItem)

lstrcpy(ptbn->pszText, "Help"); ptbn->tbButton.iBitmap = STD_HELP; ptbn->tbButton.idCommand = 11; ptbn->tbButton.fsState = TBSTATE_ENABLED; ptbn->tbButton.fsStyle = TBSTYLE_BUTTON; ptbn->tbButton.dwData = 0; ptbn->tbButton.iString = 10;

return 1; case 1:

lstrcpy(ptbn->pszText, "Delete"); ptbn->tbButton.iBitmap = STD_DELETE; ptbn->tbButton.idCommand = 12; ptbn->tbButton.fsState = TBSTATE_ENABLED; ptbn->tbButton.fsStyle = TBSTYLE_BUTTON; ptbn->tbButton.dwData = 0; ptbn->tbButton.iString = 11;

return 1; default:

Если у вас уже есть массив описаний TBBUTTON, то самый быстрый путь ответа на это сообщение состоит в использовании функции memcpy для копирования TBBUTTON для каждого получаемого сообщения. Ниже показано, как программа GADGETS делает это:

lstrcpy(ptbn->pszText, GetString(ptbn->iItem)); memcpy(&ptbn->tbButton, &tbb, sizeof(TBBUTTON));

Строка состояния

Строки состояния (status bar) - окна только для вывода информации, часто располагающиеся в нижней части главного окна программы. Наиболее частое использование строки состояния состоит в том, что она используется для отображения подробного описания пунктов меню при их просмотре пользователем, также как официант комментирует тот или иной пункт меню в ресторане. Когда меню не просматривается, программы часто отображают в строке состояния сопутствующую информацию. Также часто отображается состояние клавиш сдвига

- , , . В программах текстовых процессоров часто отображается также текущая страница, строка, столбец.

Строка состояния может работать в двух режимах, поэтому она может использоваться для описания элементов меню и вывода другой программной информации. В режиме описания пунктов меню (простом режиме, "simple mode") строка состояния расширяется для отображения простой строки текста. В режиме отображения состояния программы в строке состояния отображается одно или более окон, каждое из которых называется "частью" строки статуса. Конкретная часть строки состояния может быть создана как ниша с рамкой, которая выглядит приподнятой над поверхностью окна строки состояния, или без рамки. Кроме того, существует возможность добавить в строку состояния дочерние окна, такие как часы или индикатор прогресса. При переключении строки состояния из простого режима в режим отображения состояния программы и обратно строка состояния сохраняет один набор скрытых окон в то время, как отображается другой набор видимых окон.

Создание строки состояния

Простейший путь создания строки состояния состоит в вызове функции CreateStatusWindow :

hwndStatusBar = CreateStatusWindow(

WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | CCS_BOTTOM, "Ready", hwndParent, 2

Эта функция вызывает функцию CreateWindow , которая создает дочернее окно с родительским окном hwndParent , с текстом окна "Ready" (этот текст отображается в первом окне строки состояния), идентификатором, равным 2. Флаги стиля окна заданы в первом параметре.

В приведенной ниже таблице дано описание всех флагов стилей, которые могут использоваться для создания удобной строки состояния. Вероятно, вам чаще всего придется задействовать флаг SBARS_SIZEGRIP, поскольку он задает вывод диагональной штриховки в правом углу строки состояния. Остальные флаги стиля модифицируют начальное состояние и местоположение строки состояния так, чтобы она могла находиться в другом месте, а не в нижней части рабочей области родительского окна, что определяется флагом CCS_BOTTOM.

Флаг стиля

Описание

Представление

Отображает диагональную штриховку в

правом углу строки состояния. Эта область

служит для изменения размеров родительского

Начальное положение

Помещает строку состояния в верхнюю часть

родительского окна.

Помещает строку состояния в нижнюю часть

родительского окна (по умолчанию).

Запрещает перемещение относительно оси y .

Запрет автоматического

CCS_NOPARENTALIGN

Строка состояния устанавливает свою высоту

изменения размеров и

(cy ). Но не устанавливает свое местоположение

местоположения

(x,y ) и ширину (cx ). Для соответствующей

обработки необходимо после создания

посылать сообщение об изменении размеров.

Запрещает все автоматические перемещения и

изменения размеров. Это запрещает

следующие флаги стиля: CCS_TOP,

CCS_BOTTOM, CCS_NOMOVEY и

CCS_NOPARENTALIGN. Вы должны явно

задать размеры и положение строки состояния.

Перемещение и изменение размеров строки состояния

Когда родительское окно строки состояния изменяет размер (при получении сообщения WM_SIZE), строка состояния должна занять новое положение и приобрести другие размеры, чтобы остаться в нижней части рабочей области родительского окна. Панель инструментов изменяет размеры в ответ на сообщение TB_AUTOSIZE (см. ранее в этой главе). У строки статуса нет аналогичного сообщения. Вместо него используется примерно следующие:

int cxParent = LOWORD(lParam); int cyParent = HIWORD(lParam); int x, y, cx, cy;

// Оставить высоту окна строки состояний без изменений

GetWindowRect(hwndStatusBar, &rWindow); cy = rWindow.bottom - rWindow.top;

y = cyParent - cy; cx = cxParent;

MoveWindow(hwndStatusBar, x, y, cx, cy, TRUE);

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

Поддержка просмотра меню

Пользователи ожидают от Windows - программ отображения вспомогательной информации в строке состояния о том, какую функцию выполняет тот или иной пункт меню. Даже случайный пользователь Windows быстро учится тому, что под пунктом меню из одного слова скрывается значительно более широкое действие. И хотя опытные пользователи легко понимают смысл стандартных команд меню, иногда им приходится тратить много сил, чтобы понять смысл специфичных пунктов меню конкретной программы.

Меню окна посылает сообщение WM_MENUSELECT, когда пользователь просматривает пункты меню, и сообщение WM_COMMAND, когда пользователь выбирает пункт меню (см. главу 10). Для поддержки отображения вспомогательной информации о пунктах меню следует обрабатывать сообщение

Для упрощения процесса обработки этого сообщения и отображения текста в строке состояния библиотекой элементов управления общего пользования поддерживается функция MenuHelp . Эта функция предполагает наличие таблицы строк, содержащей тексты вспомогательной информации для отображения, и структуры данных, связывающей пункты меню с идентификаторами текстовых строк из таблицы. Функция MenuHelp определена следующим образом:

Первый параметр, uMsg , должен быть равен WM_MENUSELECT, хотя наличие этого параметра (и его описание в документации по Win32) говорит о том, что обработка сообщения WM_COMMAND была заложена еще при разработке функции. В качестве второго и третьего параметров передаются параметры wParam и lParam оконной процедуры. Эти три параметра, взятые вместе, описывают то, какую часть системы меню просматривает пользователь, и является ли он пунктом, всплывающего меню или системного.

Шестой параметр, hwndStatus , это описатель окна строки состояния. Функция MenuHelp посылает специфичное для строки состояния сообщение SB_SIMPLE для установки строки состояния в режим одного окна (простой) и для отображения соответствующего текста. Позднее, когда пользователь прекращает просмотр, функция MenuHelp посылает другое сообщение SB_SIMPLE для возврата строки состояния в режим многих окон (непростой).

Функция MenuHelp использует другие три параметра - hMainMenu , hInst и lpwIDs - для определения того, какую строку необходимо отобразить при просмотре элемента меню. Параметр hInst идентифицирует модуль, который может быть описателем экземпляра DLL или описателем экземпляра выполняемой программы, и является владельцем таблицы, содержащей строки меню (которые, как можно предположить, загружаются с помощью функции LoadString ).

Возможность сделать так, чтобы функция MenuHelp работала правильно, состоит в том, чтобы передать правильное значение в четвертом и седьмом параметрах: hMainMenu и lpwIDs . Правильная установка этих значений является небольшим трюкачеством, поскольку существует три элемента для рассмотрения: командное меню, всплывающее меню и системное меню. Другая сложность состоит в том, что документация по Win32 говорит о том, что lpwIDs - массив, в котором осуществляет поиск функция MenuHelp . Несмотря на то, что имеет смысл использовать массив для хранения базовых значений строковых ресурсов, вы должны будете сами делать грамматический разбор массива, поскольку функция MenuHelp не делает этого.

Просмотр элементов меню

Функция MenuHelp вычисляет идентификатор ID строкового ресурса для элемента меню путем добавления значения идентификатора команды (полученного из младшего слова wParam ) к значению, на которое ссылается lpwIDs . Например, следующий вызов функции MenuHelp отображает строковый ресурс с номером 125 в строке состояния:

UINT uiStringBase = 100; WPARAM wParam = 25;

MenuHelp(WM_MENUSELECT, wParam, lParam, NULL, hInst, hwndStatus, &uiStringBase);

Как показано в примере, описатель меню hMainMenu может быть равен NULL для отображения элементов меню команд, поскольку функция MenuHelp не использует это значение для расчета.

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

Просмотр элементов всплывающего меню

В случае всплывающего меню функция MenuHelp вычисляет строку-ресурс для отображения в строке состояния путем добавления индекса (с нулевой базой) всплывающего меню к значению, на которое ссылается lpwIDs . Для того чтобы это работало правильно, необходимо, чтобы четвертый параметр функции MenuHelp - hMainMenu - имел значение описателя родительского по отношению к всплывающему меню окна. Структура, приведенная ниже, обеспечивает удобный путь для установки соответствия между описателями меню и базой строковых ресурсов:

typedef struct tagPOPUPSTRING

HMENU hMenu; UINT uiString;

В программе GADGETS, в которой три пункта меню содержат всплывающие меню, эта структура данных определяется так:

POPUPSTRING popstr;

и инициализируется при создании строки статуса следующим образом:

GetMenu(hwndParent);

IDS_MAIN_MENU;

GetSubMenu(hMainMenu, 2);

IDS_TOOLBAR_MENU;

GetSubMenu(hMainMenu, 3);

IDS_STATUSBAR_MENU;

При получении сообщения WM_MENUSELECT параметр lParam содержит описатель меню родительского окна. Работа функции MenuHelp по подбору правильного ресурса строки требует от вас поиска в массиве и передачи адреса, как последнего параметра функции MenuHelp . Ниже показано, как это реализуется в программе GADGETS:

if((fuFlags & MF_POPUP) &&(!(fuFlags & MF_SYSMENU)))

for(iMenu = 1; iMenu < MAX_MENUS; iMenu++)

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

Просмотр системного меню

Функция MenuHelp обеспечивает индикацию в строке состояния вспомогательной информации для системного меню и элементов системного меню. Все, что необходимо для этого - параметры сообщения WM_MENUSELECT wParam и lParam в том же виде, что и для других типов элементов меню. Кроме того, значение hMainMenu не должно быть равно реальному описателю системного меню; NULL - вполне подходит.

Объединим теперь все эти фрагменты для элементов меню, всплывающих меню и системного меню. Ниже приведен код, иллюстрирующий то, каким образом программа GADGETS обрабатывает сообщение WM_MENUSELECT для того, чтобы отобразить вспомогательную информацию в строке состояния:

LRESULT Statusbar_MenuSelect(HWND hwnd, WPARAM wParam, LPARAM lParam)

UINT fuFlags =(UINT) HIWORD(wParam); HMENU hMainMenu = NULL;

// Обработка несистемных всплывающих меню if((fuFlags & MF_POPUP) &&(!(fuFlags & MF_SYSMENU)))

for(iMenu = 1; iMenu < MAX_MENUS; iMenu++)

if((HMENU) lParam == popstr.hMenu)

hMainMenu =(HMENU)lParam; break;

// Отображение вспомогательной информации в строке состояния

MenuHelp(WM_MENUSELECT, wParam, lParam, hMainMenu, hInst, hwndStatusBar, &((UINT) popstr.hMenu));

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

Чтобы отобразить строку состояния, выберите в меню Сервис команду Параметры , откройте вкладку Вид , а затем установите флажок строку состояния в группе Показывать .

Стр. номер - показывает номер страницы.

Разд. номер - показывает номер раздела на странице, отображаемой в данном окне.

Номер/число - показывает номер страницы и общее число страниц исходя из фактического числа страниц в документе.

Значение значение - показывает расстояние от верхнего края страницы до места вставки. Этот элемент принимает значение только в том случае, если место вставки находится в данном окне.

Ст номер - показывает строку текста, в которой находится место вставки. Этот элемент принимает значение только в том случае, если место вставки находится в данном окне.

Кол номер - показывает расстояние в знаках от левого поля до места вставки. Этот элемент принимает значение только в том случае, если место вставки находится в данном окне.

ЗАП показывает состояние записи макроса. Для включения или отключения записи макроса дважды щелкните элемент ЗАП . Когда запись макроса отключена, элемент ЗАП окрашен в неяркий цвет.

ИСПР - Показывает состояние записи исправлений. Для включения или отключения режима записи исправлений дважды щелкните элемент ИСПР . Когда запись исправлений отключена, элемент ИСПР окрашен в неяркий цвет.

ВДЛ - Показывает состояние режима выделения. Для включения или отключения режима выделения дважды щелкните элемент ВДЛ . Когда режим выделения отключен, элемент ВДЛ окрашен в неяркий цвет.

ЗАМ - показывает состояние режима замены. Для включения или отключения режима замены дважды щелкните элемент ЗАМ . Когда режим замены отключен, элемент ЗАМ окрашен в неяркий цвет.

Язык - показывает язык текста, в котором находится курсор. Дважды щелкните этот элемент для изменения формата языка выделенного текста.

Для чего используется масштабные линейки и полосы прокрутки?

Линейки позволяют визуально оценить текущее положение курсора в тексте. Однако в MS WORD линейки выполняют дополнительные, возможно, более важные функции.

Линейки :

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

Вертикальная линейка отображает вдоль левого поля страницы. С ее помощью можно быстро регулировать верхние и нижние поля страницы, а также высоту строк в таблице. Можно также по своему усмотрению отображать линейки на экране или удалять их, освободив тем самым больше места для документа. Вывести/убрать линейки: Вид>Линейка>устанавливаем или убираем галочку.

Работа за день :

7. Работал в MS Word.

8. Создание Html -таблиц


Какие способы выделения фрагментов текста применяются в текстовом процессоре?

Для выделения фрагмента текста необходимо установить курсор мыши перед первой буквой выделяемого фрагмента и нажать левую клавишу мыши. Затем, не отпуская ее, установить курсор мыши сразу за последней буквой выделяемого фрагмента и затем отпустить клавишу. Фрагмент будет выделен на экране изменением цвета фона.

Если вам надо выделить только одно слово, это лучше сделать двойным щелчком левой клавиши мыши, установив предварительно курсор мыши на выделяемое слово.

Иногда удобнее выделять текст при помощи клавиатуры. Если надо выделить произвольный фрагмент текста, вначале при помощи клавиш перемещения текстового курсора установите этот курсор перед первой буквой выделяемого фрагмента. Затем нажмите клавишу и, не отпуская ее, нажимайте клавиши перемещения курсора по вертикали или горизонтали до тех пор, пока нужный фрагмент текста не окажется выделенным. Затем отпустите клавишу .

Если вам нужно выделить только одно слово, это тоже можно сделать при помощи клавиатуры. Установите текстовый курсор перед нужным словом. Затем нажмите одновременно клавиши и , а затем клавишу перемещения текстового курсора по горизонтали . Отпустите клавиши и . Слово окажется выделенным.

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

Для более быстрого перемещения текстового курсора можно нажимать клавиши и , предварительно нажав клавишу . При этом курсор будет перемещаться скачками по словам текста. Такой прием удобно использовать для того чтобы при помощи клавиатуры быстро подвести курсор к началу или концу слова.

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

Сохранение документа в MS Word происходит следующим образом:

1. Выбираем в строке меню пункт Файл (File),

Как удалить блок текста или вырезать его?

Довольно часто при редактировании документа приходится удалять блок текса. В MS WORD это процедура выполняется достаточно просто.

Для удаления блока текста нужно выделить его (дважды щелкнуть мышью), а затем нажать клавишу или .

Для того чтобы вырезать блок текста необходимо нажать в главном меню Правка, выбрать команду Вырезать.

Как скопировать текст из документа и вставить текст в новый документ?

Очень часто возникает необходимость скопировать уже имеющийся фрагмент текса в другое место этого документа или в другой документ. Операцию копирования можно произвести с помощью: буфера обмена или мышью.

Копирование с помощью буфера обмена:

* Выделить объект;

* Из меню правка выбрать команду Копировать

* Поставить курсор в нужное место (в текущий документ или другой документ)

* Из меню Правка выбрать команду Вставить.

Копирование с помощью клавиатуры.

* Выделить объект;

* Нажать +

* Поставить курсор в нужное место и нажать +

Копирование с помощью мыши

* Выделить объект

* Установить указатель мыши в пределах выделенного объекта и при нажатой левой (правой) кнопке +копировать маркер в нужное место.

Для чего используется буфер обмена и Панель буфера обмена в MS Office? Назовите операции с буфером обмена.

Буфер обмена используется для хранения временной информации во время работы в MS WORD.

ü Открыть буфер обмена

ü Закрыть буфер обмена

Что понимают под абзацем в текстовом процессоре?

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

Работа за день :

1 .Работал в MS Word.

Строка состояния

В нижней части окна находится строка состояния (рис. 1.39). Это еще один элемент интерфейса, который в Word 2007 подвергся изменению и доработке.

Рис. 1.39. Строка состояния


Кроме традиционных данных о документе (общего количества страниц в документе и номера текущей страницы) в Word 2007 на строке состояния появились новые элементы.

Практически все информационные блоки на строке состояния являются кнопками, предназначенными для быстрого вызова команд. При щелчке на кнопке с количеством страниц открывается окно Найти и заменить, позволяющее быстро перейти к другой странице документа. Щелчок на кнопке с количеством слов открывает окно статистики документа, которое показывает количество строк, абзацев, знаков без пробелов и с пробелами. Это очень полезно при написании статей и рефератов. В предыдущих версиях Word вызывать окно статистики было гораздо менее удобно.

Если Word не обнаружил орфографических ошибок в документе, то значок проверки орфографии называется Ошибки правописания не найдены и имеет вид раскрытой книги с зеленой «птичкой». Если Word считает какие-то слова в документе ошибочными, то этот значок принимает вид книги с красным крестиком и его название изменяется на Найдены ошибки правописания, щелкните для исправления. При щелчках на этом значке Word последовательно выделяет в тексте слова с ошибками и выводит на экран контекстное меню, содержащее варианты действий с этим словом (рис. 1.40). Если в словаре Word есть похожие слова, то они отображаются в данном меню. Если щелкнуть на слове в меню, то оно будет вставлено вместо ошибочного. С помощью этого меню также можно пропустить текущее ошибочное слово и перейти к следующему, пропустить все аналогичные ошибочные слова или добавить слово в словарь программы. Это очень полезная возможность, так как словарь Word хоть и достаточно обширный, но в нем зачастую нет вполне распространенных слов. Особенно эта функция актуальна, если вы часто работаете со специализированными текстами, например медицинскими или техническими. После добавления слова в словарь оно не будет считаться ошибочным.

Рис. 1.40. Контекстное меню для ошибочного слова


Если щелкнуть на кнопке, на которой показан текущий язык документа, откроется окно выбора языка в текущем документе, для которого будет проверяться орфография (рис. 1.41).

Рис. 1.41. Окно выбора языка


В Word 2007 кнопки переключения режимов просмотра документа переместились на строку состояния (в предыдущих версиях Word они находились слева от полосы прокрутки) (см. рис. 1.39). Эти кнопки позволяют выбрать режим просмотра документа: Разметка страницы, Режим чтения, Веб-документ, Структура и Черновик. Различные режимы отображения документа служат для изменения способа восприятия информации пользователем. Подробнее эти режимы описаны в разд. 2.4.

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

Если вам кажется неудобным изменение масштаба при помощи ползунка или вы никогда не пользуетесь кнопкой для проверки орфографии, вы можете убрать эти блоки со строки состояния. В Word 2007 можно настраивать команды, вынесенные на нее. Для этого щелкните на ней правой кнопкой мыши. В появившемся меню можно не только отключить отображение ненужных команд, но и включить те, которые неактивны по умолчанию, но, возможно, для вас будут полезны (рис. 1.42). Например, вы можете включить отображение номера строки, раздела, столбца, нажатия клавиши Caps Lock и т. д.

Рис. 1.42. Меню настройки строки состояния


Совет

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

Была у меня в Word 2007 строка состояния. Удобная. Расположена внизу экрана. Показывает количество страниц в документе, номер текущей страницы документа, масштаб документа и еще целый ряд параметров документа (рис. 1, кликните по рисунку для увеличения):

Рис. 1 Строка состояния в Word 2007

Ее, строку состояния, даже настраивать можно. Для этого в свободном месте строки состояния нужно щелкнуть правой кнопкой мыши и появится контекстное меню (рис. 2). Ставим или убираем галочку возле интересующего параметра и тем самым выполняются настройки строки состояния в Word 2007.

Рис. 2 Настройка строки состояния в Word 2007

И вдруг – нет строки состояния. Как корова языком слизнула. Что случилось? Что произошло? Куда и на что нажала? Не понятно.

Пробую восстановить. Сохраняю документ, с которым работала. Закрываю Word. Запускаю Word снова, открываю документ. Строка состояния, увы, не появилась.

Перебираю всевозможные настройки Word 2007. Например, ищу в верхнем меню «Вид», но там ничего нет о строке состояния. Когда она была на своем месте, я ее как-то и не замечала. И вот эта полезная строка исчезла…

Попробуем проверить самый простой вариант.

Строка состояния Word закрыта Панелью задач

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

1) Нужно открепить Панель задач, подробнее . Затем следует перенести Панель задач влево или вправо на экране. Тогда внизу экрана будет все видно, в том числе, возможно, будет видна строка состояния Word. Если не видно, значит, ее действительно нет.

2) В правом верхнем углу окна Word есть 3 кнопки:

Рис. 3 Кнопки в правом верхнем углу в окне Word

Надо нажать на кнопку “Свернуть в окно” (2 на рис. 3), чтобы у окна Word появилась граница.

3) Затем нужно подвести курсор мыши к границе окна Word и поднять окно вверх, чтобы уменьшить его снизу.

4) Вернуть Панель задач вниз, закрепить ее.

5) В правом верхнем углу Word кликнуть по кнопке 2 на рис. 3 и развернуть окно на весь экран. Убедиться визуально, что строка состояния Word теперь видна и она находится на месте.

Если этот вариант не подошел, перейдем к более сложному варианту.

Дистрибутив Word

Вариант посерьезнее – это дистрибутив (установочная программа) Word 2007 в составе дистрибутива MS Office 2007. Вставляю диск с дистрибутивом MS Office 2007. Нахожу на нем дистрибутив Word 2007. Первое желание – полностью удалить Word 2007 из компьютера, а потом заново установить его с дистрибутива.

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

Итак, запускаю программу установки Word 2007. Двойной щелчок левой кнопкой мыши по соответствующей иконке в окне на диске и … Менее чем на 1 секунду появляется окно установки Word 2007, в котором успеваю прочитать надпись «Производится настройка параметров Word 2007». Даже не успела сделать, чтобы показать это наглядно. Затем окно исчезает и больше ничего не происходит. Вообще ничего не происходит.

Тогда решаюсь снова запустить Word 2007. И вижу на привычном месте долгожданную строку состояния. Вот, как оказывается, все просто! Разработчики Word 2007 все предусмотрели. И даже эту необычную ситуацию исчезновения строки состояния.

Но до сих пор мне не понятно, как из всего многообразия настроек Word 2007, они решили, что мне нужно восстановить именно строку состояния. Хоть бы вопрос задали в процессе восстановления параметров, например, какая настройка Вам нужна. Вероятно, в этом случае все делается « ». То есть, разработчики Word 2007 сами приняли решение по поводу того, что именно нужно пользователю, не задавая ему «лишних» вопросов. Мелочь, но приятно! Меньше секунды, и все опять работает привычным образом.

Зря ругают компанию Microsoft за якобы плохое качество программных продуктов и слабую ориентацию на пользователей. Замечательное качество и наилучшая ориентации на потребителя – пользователь еще ничего не сказал, а они уже все сделали и, главное, что сделали именно то, что нужно пользователю.

5.5. ПАНЕЛЬ ИНСТРУМЕНТОВ И СТРОКА СОСТОЯНИЯ

Панель инструментов (Toolbar ) и строка состояния ( Status Bar ) - это специаль­ные компоненты пользовательского интерфейса, предназначенные для создания функционально-ориентированных наборов элементов управления. Панель инстру­ ментов содержит, как правило, элементы управления, обеспечивающие быстрый доступ к наиболее часто используемым командам или свойствам объектов. Разли­ чают несколько типов панелей инструментов, ориентированных на применение в специфических приложениях. Такие специализированные панели иногда имеют собственные названия (рис. 5.31).

Рис. 5.31. Примеры панелей инструментов

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

Доступ к элементам управления, включенным в панель инструментов или стро­ ку состояния, реализуется либо с помощью мыши, либо через другие стандартные средства взаимодействия с этими элементами. Может быть также реализовано кла­виатурное взаимодействие, основанное на использовании горячих клавиш или кла­ виш доступа. Если элемент панели инструментов или строки состояния не имеет текстовой метки, средства клавиатурного доступа для него оказываются неэффек­тивными. Кроме того, если какая-либо клавиша доступа уже используется в пер­ вичном окне, она не может применяться для работы с панелью инструментов. На­пример, если полоса меню первичного окна уже использует некоторую клавишу доступа, то все события, связанные с этой клавишей, будут обрабатываться приме­ нительно к полосе меню.

Рис. 5.32. Варианты реализации строки состояния

Когда пользователь взаимодействует с элементом управления, расположенном на панели инструментов или в строке состояния, любое изменение непосредствен­но относится к текущему выбору (например, если кнопка панели инструментов пред­ назначена для изменения начертания шрифта в тексте, то при нажатии этой кнопки текст немедленно изменяется); никакое дополнительное подтверждение не требу­ется. Единственное исключение составляет случай, когда использование элемента управления (например, кнопки), требует от пользователя ввода дополнительной информации; соответствующая операция не может быть реализована, пока пользо­ ватель не введет требуемую информацию. Примером такого исключения является выбор объекта или установка значения параметра с помощью диалоговой панели.

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

С целью обеспечения максимальной гибкости в работе пользователей панели инструментов и строки состояния должны допускать индивидуальную настройку. Простейший вариант такой настройки - возможность скрыть (не отображать) эти элементы интерфейса. В более сложных приложениях пользователю предоставля­ется право изменять или перестраивать элементы, включенные в панели инстру­ментов или строки состояния.

Рекомендуется также обеспечивать возможность отображения каждой кнопки на панели инструментов по крайней мере двух размеров: 24 на 22 и 32 на 30 пиксе­ лов. Если для обозначения кнопок используются графические метки, они должны иметь размеры не более чем 16 на 16 и 24 на 24 пикселов соответственно.

Продумайте также возможность создания перемещаемой пользователем панели инструментов. Хотя панель инструментов по умолчанию отображается как при стыкованная к определенному краю окна или панели, в которых она используется, разрешите пользователю перемещать ее к другому краю или отображать в виде окна палитры (рис. 5.33).

Рис. 5.33. Перемещаемая панель инструментов

Для перемещения панели инструментов необходимо установить указатель на любом свободном участке панели и, нажав ЛКМ, перетащить ее на новое место. Если новая позиция находится в пределах горячей зоны края окна, при­ ложение должно автоматически пристыковать панель к краю окна (после того, как пользователь отпустит кнопку мыши). Если же новая позиция находится вне горячей зоны края окна, панель инструментов преобразуется в окно палит­ры. Чтобы вновь пристыковать панель к краю окна, пользователь должен уста­ новить указатель на полосе заголовка окна палитры и, нажав ЛКМ, перемещать это окно, пока указатель не окажется в горячей зоне; когда пользователь отпу­стит кнопку мыши, панель инструментов отображается в пристыкованном со­ стоянии.

Во время перемещения панели инструментов обеспечьте визуальную обрат­ ную связь, отобразив, например, перемещение контура панели инструментов. Когда указатель входит в горячую зону окна, измените соответствующим обра­зом контур панели инструментов, чтобы пользователь мог визуально контроли­ ровать операцию (рис. 5.34).

Рис. 5.34. Визуализация перемещения панели инструментов

Вы можете также поддержать для панели инструментов настройку пользовате­лем других параметров, таких например, как изменение размеров панели инстру­ ментов, стыковку нескольких панелей, размещение их в требуемом порядке и т.п.

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

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

Нельзя одновременно отображать регулятор в двух позициях: в строке состоя­ ния и на пересечении полос прокрутки окна (в его стандартной позиции). Когда на экране отображается строка состояния, содержащая регулятор, то из стандартной позиции он должен быть убран; если же пользователь убирает строку состояния, восстановите регулятор на стандартной позиции.

СТАНДАРТНЫЕ КНОПКИ ПАНЕЛИ ИНСТРУМЕНТОВ

Табл. 5.6 иллюстрирует стандартные форматы кнопок «общего назначения» ко­торые могут быть использованы в любом приложении.

Таблица 5.7.

Форматы стандартных кнопок панели инструментов

Формат 16х16

Формат 24х24

Функция

Создать (New )

Открыть (Open)

Печать (Print)

Предварительный просмотр (Print Preview )

Отменить (Undo)

Повторить (Redo)

Вырезать (Cut)

Вставить (Paste)

Копировать (Copy)

Удалить (Delete)

Найти (Find)

Заменить (Replace)

Полужирный [курсив] (Bold )

Курсив (Italic)

Подчёркнутый [ шрифт ] (Underline)

Свойства (Properties)

Что Это? [режим контекстно-зависимой подсказки] (What ’ s This )

Открыть родительскую папку (Open parent folder )

Отобразить как крупные пиктограммы (View as large icons )

Отобразить как мелкие пиктограммы (View as small icons )

Отобразить в виде списка (View as list )

Отобразить в виде таблицы (View as details )

Выделить (выбрать) область (Region selection tool )

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