Хорошие ресурсы для создания графического интерфейса в Visual Studio - PullRequest
5 голосов
/ 29 июля 2009

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

То, что я ищу, - это хорошие (или, по крайней мере, приличные) руководства по созданию ( не проектирование! ) графического интерфейса в Visual Studio.

Если это не удастся (я ничего не нашел в обычных источниках), я должен спросить: возможно ли / стоит ли создавать графический интерфейс с представлением VS2K5 «Дизайн»? Это то, чем я в основном пользуюсь, поскольку я визуальный человек.

В частности, я ищу помощь в «гайках и болтах» РЕАЛИЗАЦИИ законченного проекта

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

Ответы [ 6 ]

3 голосов
/ 09 сентября 2009

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

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

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

РЕДАКТИРОВАТЬ: если вы готовы платить, http://www.learnvisualstudio.net/ имеет несколько видео на тему создания простых графических интерфейсов для базового приложения, обычно ориентированных на определенный элемент управления (DataGridView, ListView и т. Д.).

2 голосов
/ 10 сентября 2009

Конструктор Visual Studio для WinForms работает очень хорошо. Я использую его все время при создании приложений WinForms. Альтернативный подход заключается в определении элементов пользовательского интерфейса в коде, что довольно болезненно.

OTOH, на мой взгляд, опыт дизайнера VS для WPF и WebForms (ASP.NET) не так хорош, как с WinForms. К счастью, для приложений WPF и WebForms, если вам не нравится дизайнер, вы можете, по крайней мере, вернуться к использованию декларативной разметки, что намного лучше, чем определение элементов пользовательского интерфейса в коде (к сожалению, в WinForms нет языка декларативной разметки).

Используя конструктор VS WinForms, вот несколько советов для улучшения вашего опыта:

  • Узнайте, как использовать свойство Anchor . Изучение этого вместе со свойством Dock вероятно улучшил мой дизайн WinForms опыт больше всего на свете.

  • Когда у дизайнера всегда есть Схема документа Открыть, который показывает Вы управляющая иерархия вашего форма в виде дерева ... действительно полезно, особенно при переименовании контроля.

2 голосов
/ 10 сентября 2009

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

Я не уверен, спрашиваете ли вы о руководствах по WinForms или, в частности, о том, как организовать и структурировать код таким образом, чтобы вы были в здравом уме, но в любом случае У Джереми Миллера есть хорошая коллекция советов о том, как разработать структуру кода GUI . (Примечание: речь идет о структуре кода GUI, а не о WinForms или дизайне удобства использования).

Обычно я воспринимал код GUI следующим образом:

  1. Создайте грубый и беспорядочный графический интерфейс с Дизайнером в VS. Исходя из веб-дизайна, вы можете рассмотреть эту MS Frontpage в режиме WYSIWYG - без стилизации или конкретной структуры. Просто грубая визуальная структура приложения, меню, панели инструментов, строки состояния и т. Д. Нет пользовательских элементов управления.
  2. Просмотр кода и организация его в пару классов
  3. Вернитесь в Designer и добавьте элементы управления в организованные классы
  4. Просмотр кода и организация его.
  5. Прополощите, вспените, повторите.

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

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

0 голосов
/ 09 сентября 2009

Я тоже отстой в разработке пользовательских интерфейсов. Я продолжаю все портить. В любом случае, я пытаюсь улучшить. Мой новый подход очень прост: копировать. Существует множество хороших пользовательских интерфейсов, и нам не нужно изобретать велосипед. Хороший побочный эффект - это преемственность в опыте наших пользователей.

Возьмите программу, которую ваши пользователи находят семейной, и попытайтесь имитировать ее. Я думаю, что многие приложения могут быть выполнены, например, путем отслеживания пользовательского интерфейса MS Outlook. Или, если вы хотите сделать что-то новое, посмотрите, что делают большие: например, попробуйте Picasa (рабочий стол) от Google. Или любая программа с ленточной панелью. Если у вас есть время, взгляните на MS * Руководство по взаимодействию с пользователем в Vista * (PDF доступен для скачивания). Есть много маленьких решений, например, где разместить кнопки «сохранить-отменить» и в каком порядке ... это глупо, но имеет большое значение.

Хороший ресурс, если у вас есть задача, которую нужно выполнить, и вы хотите узнать, как ее представить, - Айва от Infragistic . В нем есть множество советов "делай как это" и примеры скриншотов.

Другим хорошим ресурсом, как упомянул Харальд, является SmashingMagazine : вы можете подписаться на их ленту, и это правда, что дизайн рабочего стола каждый день становится ближе к веб-аналогу.

И, наконец, значки. SmashingMagazine часто дает советы о иконках, и вы можете найти множество коллекций на IconFactory .

НТН!

0 голосов
/ 29 июля 2009

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

Для меня дизайнеры GUI всегда были способом отделить презентацию от контента, хорошая реализация GUI с его Designer поддержит это, если вы начнете писать много кода для воздействия на простые эффекты в UI, которые линия начинает размываться Интерфейсный Разработчик на Mac делает это лучшим из всех, что я использовал (среди других Java Swing, Windows Forms).

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

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

0 голосов
/ 29 июля 2009

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

Кроме того, что касается того, «стоит ли усилий для создания графического интерфейса с представлением VS2K5« Дизайн »»? Я бы сказал, что да и нет. Я говорю это только из-за того, что если вы слишком полагаетесь на дизайнера, независимо от среды IDE, вы упускаете излишние и грязные вещи - то, что действительно учит вас тому, что происходит. Некоторые вещи, которые вы должны делать с помощью кода во время разработки или во время выполнения, чтобы получить наилучший результат, чтобы не мешало по-настоящему знать, что происходит под капотом!

Счастливый GUI'ing!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...