51
компонентін орнатып, одан кейін осы компонентте тышқанды екі рет шерту амалын
орындаса болғаны.
Меню редакторы (7.1 сурет) пайдаланушыға графикалық режимде меню
командаларының аттарын енгізуге мүмкіндік береді. Бұл жағдайда автоматты түрде
менюдің әрбір командасы үшін TMenuItem типтес объекттер құрылады. Енгізілген
командалар аттары бір мезгілде Объекттер инспекторының Caption қасиетінде көрсетіледі.
Форма терезесі де TMainMenu менюінің меню редактрорында анықталатын барлық
элементтерін көрсетіп тұрады.
7.1 сурет. Меню редакторы және объекттер
инспекторы
Менюді құрған кезде формаға қойылатын компоненттер автоматты түрде объекттер бұтағы
терезесінде көрініп тұрады. Қосымшаның бас менюі мен жанама менюін құру жолдары
толығырақ «
Delphi ортасында қосымшалар құру» тақырыбында қарастырылады
.
№10. Дәріс. Қосымшалар құру. Ерекше жағдайларды өңдеу. Ерекше жағдайларды
өңдеуде KeyPress жағдайын пайдалану. Керекті батырмаларға жұмыс жасамайтын
жағдайлар туғызу. SetFocus - жағдайын пайдалану арқылы таңдалған батырмаларды
басып, басқаруды көрсетілген компоненттке беруді ұйымдастыру.
Дәріс конспектісі:
Обработка исключительных ситуаций с использованием событий
Key Press
выполняется путём организации блокирования лишних клавиш на клавиатуре, с целью
исключения нажатия нежелательных клавиш. Также для организации передачи управления
(перенос курсора) с помощью процедуры
Set Focus при нажатии выбранных клавиш
управления (например, клавиши
Enter). Таким же образом можно изменить назначение
клавиш.
Для этого на компоненте ввода, например: Edit1.text, обрабатывается событие
Key Press
двойным щелчком и на появившейся процедуре обработки прописываются следующие
команды с управлением передачи курсора на поле ввода Edit2.text:
53
айналдыра алмай қалады. Delphi-де TRY..EXCEPT..END операторының көмегімен
программада қателер барын тексеріп отыруға арналған өте сыпайы механизм бар.
TRY..EXCEPT..END
операторы құрамы бойынша, екі бөліктен тұрады. Біріншісі – ол опера-
торлар қатары, бұл операторлар қатары TRY және EXCEPT арасында көрсетіліп, ерекше
жағдайлар болуы мүмкін блок, - деп аталады. Екінші бөлімі - ол ерекшелерді өңдеу
on типі_
ерекшелер операторы.
Оның жалпы түрі келесідей:
TRY
// Мына жерде қате болуы мүмкін
EXCEPT
Егер
қате пайда болса, онда осы командалар
орындалады
END;
Осы оперторды біздің процедураға енгізіп көрейік:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:real;
begin
try
a:=StrToFloat(LabeledEdit1.Text);
b:=StrToFloat(LabeledEdit2.Text);
c:=SQR(a+b)
except
Label1.Caption:=’
Деректер дұрыс емес’;
Exit
end;
Label1.Caption:=FoatToStr(c)
end;
Exit
операторы бүкіл процедурадан күні бұрын шығу жолын шақырады. Егер ол
болмаған жағдайда
Label1.Caption:=FloatToStr(c) операторы бәрібір орындалар
еді, өйткені оның
try операторымен ешқандай байланысы жоқ.
Обработка ошибок с помощью стандартных классов исключений Класс
Exception
и Класс Finally.
Операторы обработки исключений TRY..EXCEPTION..END; TRY..
FINALLY..END
В языке Object Pascal для работы с исключениями реализованы следующие
операторы:
Raise –
для создания объекта исключение;
try..except-
для определения блоков обработки конкретных исключений.
Try…finally –
для определения одного блока обработки всех исключений.
После оператора Try размещается последовательность операторов, в которой
возможно возникновение исключения. После элемента фразы
except или
finally
размещаются блоки обработки ошибок.
Наша программа страдает существенным недостатком: если в поле ввода вместо
числа ввести, скажем, "Вася", программа "свалится" с выдачей сообщения об
ошибке (проверьте!) Оно и понятно – функция FloatToStr не может преобразовать
"Васю" в вещественное число.
В Delphi реализован очень
элегантный механизм реакции на ошибки в
программе при помощи оператора TRY..EXCEPT..END.
Опера тор TRY..EXCEPT..END состоит как бы из 2-х частей. Первая – это
последовательность операторов, указываемая между TRY и EXCEPT, называемая