Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 62908
Имитационное мо... 58290
Реклама
Сейчас на сайте
Гостей: 5
На сайте нет зарегистрированных пользователей

Пользователей: 13,091
новичок: avegraf
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование автомойки на GPSS + Отчет + Блок схемы
Расчет обратной матрицы на Delphi + Пояснительная записка
Моделирование станции технического обслуживания на GPSS + Отчет

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Требования к меню в SDI-приложениях Windows
Практически любое приложение должно иметь меню, поскольку именно меню дает наиболее удобный доступ к функциям программы. Существует несколько различных типов меню:
• главное меню с выпадающими списками команд пунктов меню (разделов);
• каскадные меню, в которых разделу первичного меню ставится в соответствие список команд вторичного меню;
• всплывающие или контекстные меню, появляющиеся, если пользователь щелкает правой кнопкой мыши на каком-то элементе формы приложения.
Основное требование к меню — их стандартизация. Это требо¬вание относится ко многим аспектам меню: месту размещения заголовков меню и их пунктов, форме самих заголовков, клавишам быстрого доступа, организации каскадных меню. Цель стандартизации — облегчить пользователю работу с приложением с тем, чтобы пользователю не приходилось думать, в каком меню и как ему надо открыть или сохранить файл, как ему получить справку, как работать с буфером обмена Clipboard и т.д.
Начнем рассмотрение требований с размещения пунктов меню. Типичная полоса главного меню приложения приведена на рис. 1.
Типичная полоса главного меню приложения
Рис.1
Состав пунктов меню зависит от конкретного приложения. Но размещение общепринятых пунктов меню должно быть стандартизированным. Обычно пункт меню Файл размещается слева в полосе главного меню, раздел справки — справа, перед ним в приложениях MDI размещается меню Окно и т.д. Главное меню должно также снабжаться инструментальной панелью (см. рис. 1), быстрые кнопки которой дублируют наиболее часто используемые команды меню. На этих кнопках надо использовать, по возможности, привычные картинки. В Delphi имеется множество изображений кнопок, но, к сожалению, они не всегда имеют привычный для пользователя рисунок.
По возможности стандартным должно быть и расположение команд в пунктах меню. На рис. 2 приведены распространенные варианты наборов команд в пунктах меню Файл — работа с файлами, Правка — работа с текстами, Формат – форматирование текста; Справка — просмотр справочных данных.
меню
Рис. 2
В большинстве меню команда Выход всегда размещает¬ся последней в пункте Файл, а команда О программе..., содержащая раздел информации о версии про¬граммы — последней в пункте Справка.
Группы функционально связанных команд отделяются в выпадающих меню разделителями в виде горизонтальных линий, как показано на рис.2,а, 2,б, 2,г.
Названия пунктов и команд меню должны быть привычными для пользователя, достаточно краткими и понятными. Не следует использовать длинные фразы более двух слов, поскольку это перегружает экран и замедляет выбор пользователя. Названия пунктов и команд должны начинаться с заглавной буквы. Применительно к английским названиям существует требование, чтобы каждое слово тоже начиналось с заглавной буквы. Но применительно к русским названиям это правило не применяется.
Названия команд меню, связанных с вызовом диалоговых окон, должны заканчиваться многоточием, показывающим пользователю, что при выборе этого раздела ему предстоит установить в диалоге еще какие-то параметры (команды Открыть, Сохранить как на рис. 2,а и др.).
Команды, к которым относятся каскадные меню (рис. 3), должны заканчиваться символом ►, указывающим на наличие дочернего меню данного раздела.
каскадные меню
Delphi ставит эту стрелку автоматически. Злоупотреблять каскадными меню не следует, так как пользователю не так просто до них добираться. Если в дочернем меню должно быть много команд, например связанных с какими-то опциями и настройками, то целесообразнее вместо этого дочернего меню предусмотреть диалоговое окно, в котором эти опции будут более обозримыми и доступными.
В каждом названии команды должен быть выделен подчеркиванием символ, соответствующий клавише быстрого доступа к команде (клавиша Alt плюс подчеркнутый символ).
Многим командам могут быть поставлены в соответствие «горячие» клавиши, позволяющие обратиться к команде, не открывая меню. Комбинации таких «горячих» клавиш должны быть традиционными. Например, команды вы¬резания, копирования и вставки фрагментов текста практически всегда имеют «горячие» клавиши Ctrl-X, Ctrl-C и Ctrl-V соответственно. Заданные сочетания клавиш отображаются в строках соответствующих команд меню (рис. 2,а и 2,б).
В Delphi предусмотрена возможность включать в меню пиктограммы, соответствующие некоторым командам. Но это требование не является обязательным.
Не все команды меню имеют смысл в любой момент работы пользователя с приложением. Например, если в приложении не открыт ни один документ, то бессмысленно выполнять команды редактирования в пункте Правка. Если в тексте документа ничего не изменялось, то бессмысленной является команда этого меню Отменить, отменяющая последнюю команду редактирования. Такие команды и пункты меню должны делаться временно недоступными или невидимыми. Это осуществляется заданием значения false свойствам команды Enabled или Visible соответственно. Различие между недоступными и невидимыми командами в том, что недоступная команда видна в меню, но отображается серым цветом, а невидимая команда просто исчезает из меню, причем нижележащие команды смыкаются, занимая ее место. Выбор того или иного варианта — дело вкуса и удобства работы пользователя. Вероятно, целиком пункты меню лучше делать невидимыми, а отдельные команды — недоступными. Например, пока ни один документ не открыт, пункт меню Правка можно сделать невидимым, чтобы он не отвлекал внимания пользователя. Команду Отменить этого пункта в соответствующих ситуациях лучше делать недоступной, чтобы пользователь видел, что такая команда в меню есть и ею можно будет воспользоваться в случае ошибки редактирования.
Многие компоненты (например, многострочные окна редактирования) должны иметь контекстные меню, всплывающие при щелчке на них правой кнопкой мыши и обычно дублирующие основные команды главного меню, относящиеся к данному компоненту. Кроме того, обычно желательно иметь в приложении панель состояния (см. строку внизу окна на рис. 1), в которой даются пользователю некоторые подсказки по работе.
Опубликовал Kest December 23 2009 01:33:42 · 0 Комментариев · 5630 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Анимированное поя...
Dynamic Titles дл...
Заставка. Изображ...
JanReplace
Rss Parser
Delphi 2005. Разр...
MPTools
C# Учебный курс
Delphi 7 Enterpri...
Программирование ...
CarGame [Исходник...
ScreenSaver [Исхо...
Zoom [Исходник на...
Fig [Исходник на ...
WinPopup
База каталогов ( ...
Blobs [Исходник н...
Geo-Whois
Delphi 2005 для .NET
TrayComp

Топ загрузок
Приложение Клие... 100476
Delphi 7 Enterp... 87808
Converter AMR<-... 20082
GPSS World Stud... 13397
Borland C++Buil... 12041
Borland Delphi ... 8665
Turbo Pascal fo... 7048
Visual Studio 2... 5005
Калькулятор [Ис... 4894
FreeSMS v1.3.1 3545
Случайные статьи
В свою очередь эта...
Тэги head, title и...
Invalid numeric fo...
4.1. Двоичный поис...
Протокол IP-адрес ...
6.10. Обработка ф...
Создание потоков с...
Ограничение ущерба
Содержание
Настройка дизайн-т...
Invalid typecast
Каждый DNS-сервер ...
Использование указ...
Подвесной светильн...
Разработать прикла...
расположены в разн...
Комментарии в языке С
Когда говорят про ...
Пример программиро...
Дляэтого к каждому...
Определение параме...
Операторы прерыван...
Другие тесты
на ваше решение
Повышенная надежно...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?