Основные принципы разработки графического пользовательского интерфейса

ADOTable5.Next;

end;end;end;

begin

ProgressBar1.Max:=5000;i:=0;

CreateDir('C:\setup');

CreateDir('C:\setup\Internet');

CreateDir('C:\setup\Entertainments');

CreateDir('C:\setup\Games');

CreateDir('C:\setup\Office');

CreateDir('C:\setup\Utilites');

assignfile(f,'REZ.txt');

rewrite(f);

LookDir('C:\Program Files', '.exe',ListBox1.Items);

reset(f)

;setap;

closefile(f);

ProgressBar1.Position:=ProgressBar1.Max;

Label1.Caption:='Installation is finished';

Button1.Visible:=False;

Button2.Visible:=true;

end;

procedure Tsetup.Button2Click(Sender: TObject);

begin

Close;

end;

procedure Tsetup.FormClose(Sender: TObject; var Action: TCloseAction);

begin

ADOTable1.Close;ADOTable2.Close;

ADOTable3.Close;ADOTable4.Close;

ADOTable5.Close;

end;

end.

unit ADOTableofset;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, DB, ADODB;

type

TTabSheetset = class(TForm)

RadioGroup1: TRadioGroup;

Button1: TButton;

DataSource1: TDataSource;

ADOTable1: TADOTable;

procedure Button1Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

end;

var

TabSheetset: TTabSheetset;

implementation

{$R *.dfm}

uses Editing, Viewing, Setuping;

procedure TTabSheetset.Button1Click(Sender: TObject);

begin

edit.Show;

case TabSheetset.RadioGroup1.ItemIndex of

0:ADOTable1.TableName:='Entertainments';

1:ADOTable1.TableName:='Games';

2:ADOTable1.TableName:='Internet';

3:ADOTable1.TableName:='Office';

4:ADOTable1.TableName:='Utilites';

end;

ADOTable1.Open;

hide;

end;

procedure TTabSheetset.FormClose(Sender: TObject;

var Action: TCloseAction);

begin

ADOTable1.Close;

look.Show;

end;

end.

unit Editing;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids, DB, ADODB, Menus, ComCtrls, ToolWin, ExtCtrls,

DBCtrls;

type

TEdit = class(TForm)

DBGrid1: TDBGrid;

MainMenu1: TMainMenu;

abSheet1: TMenuItem;

choose1: TMenuItem;

N1: TMenuItem;

Close1: TMenuItem;

ToolBar1: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton5: TToolButton;

DBNavigator1: TDBNavigator;

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure Close1Click(Sender: TObject);

procedure ToolButton1Click(Sender: TObject);

procedure choose1Click(Sender: TObject);

end;

var

Edit: TEdit;

implementation

uses Viewing, ADOTableofset;

{$R *.dfm}

procedure TEdit.FormClose(Sender: TObject; var Action: TCloseAction);

begin

TabSheetset.ADOTable1.Close;

look.Show;

end;

procedure TEdit.Close1Click(Sender: TObject);

begin

close;

end;

procedure TEdit.ToolButton1Click(Sender: TObject);

begin

TabSheetset.Show;close;

end;

procedure TEdit.choose1Click(Sender: TObject);

begin

TabSheetset.Show;close;

end;

end.

Заключение

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

Джонатан Грудин

Совместимость – одна из основных задач разработки пользовательского интерфейса. Совместимость очень сложно идентифицировать, определить и внедрить. Кроме того, она может и отвлекать от основных целей. Грудин делает предположение о том, что "когда совместимость пользовательского интерфейса становится первоочередной задачей, то это уводит наше внимание в сторону от главного — пользователей и их работы" [14].

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

Исследователи занимались изучением того, как разработчики используют руководящие принципы. Одно исследование было проведено в рамках подготовки компанией IBM (1992) руководства по пользовательскому интерфейсу и справочнику. Тецлав и Шварц предложили разработчикам построить соответствующие интерфейсы на базе руководящих принципов по общему пользовательскому интерфейсу. Они выяснили, что были упущены несколько важных идей и деталей. Разработчики отдавали предпочтение графическим иллюстрациям и примерам, а не тексту, рассказывающему о концепциях разработки. Кроме того, они хотели иметь возможность исследовать предлагаемые примеры интерактивным способом. Полученные разработки в большой степени были признаны совместимыми, однако имели место и расхождения в интерпретации руководящих принципов [15]. Разработка интерфейса во многом похожа на нашу жизнь — на конкретный вопрос не всегда есть однозначный ответ.

Другое исследование Товтрап и Нильсен принесло аналогичные результаты [16]. Только 71% разработок соответствовал стандартам. Большая часть отличий была обусловлена влияниям опыта разработчиков по созданию нестандартных проектов. Представленный для оценки интерфейс имел в среднем от 4 до 12 отклонений. Это было особенно удивительно, поскольку у участников теста интерес к удобству применения интерфейса был выше среднего. Разработка интерфейса — больше искусство, чем наука. Конкретные примеры чрезвычайно полезны, поскольку демонстрируют, как надо следовать руководящим принципам по разработке. Чтобы обучить разработчиков использованию принципов, требуются продолжительные тренинги. Алан Зейчик удачно подвел итог по этой теме: "Мораль такова: при разработке программных инструментов и потребительских продуктов стоит следовать существующим руководящим принципам по пользовательскому интерфейсу. Следуйте им, даже если вам кажется, что они имеют дефекты. Возможно, ваш проект более высокого качества, но спросите себя: поможет ли эта высочайшего качества схема, отображающая функциональные клавиши, или усовершенствованная метафора меню моему приложению стать неотъемлемой частью рабочей среды пользователя? Или это станет постоянным источником раздражения, из-за которого мой совершенный продукт в итоге будет пылиться на полке?".

Страница:  1  2  3  4  5  6  7 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы