Замечание
Стандартные процедуры и функции для работы с любыми файлами
Type
Type
TMouseButton = (mbLeft, mbRight, mbMiddle);
По именам возможных значений параметра понятно, какая из кнопок мыши нажата.
Shift: параметр, имеющий тип–множество, объявленный в модуле Classes:
TShiftState = set of(ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);
Тип TShiftState используется обработчиками событий мыши и клавиатуры для выяснения состояния клавиш Alt, Ctrl, Shift клавиатуры и кнопок мыши в момент происхождения события.
Составляющие множество «флаги» имеют следующий смысл:
ssShift – клавиша Shift нажата.
ssAlt – клавиша Alt нажата.
ssCtrl – клавиша Ctrl нажата.
ssLeft – левая кнопка мыши нажата.
ssRight – правая кнопка мыши нажата.
ssMiddle – средняя кнопка мыши нажата.
ssDouble – мышь получила двойной щелчок.
x, y: координаты указателя мыши (в пикселях) относительно верхнего левого угла элемента, с которым произошло событие (в данном случае, ImageGraph).
Событие «перемещается указатель мыши» (MouseMove).
procedureTForm1.ImageGraphMouseMove(Sender: TObject;
Shift: TShiftState; x, y: Integer);
Параметры в дополнительных пояснениях не нуждаются.
Событие «отпущена кнопка мыши» (MouseUp).
procedureTForm1.ImageGraphMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; x, y: Integer);
Параметры в дополнительных пояснениях не нуждаются.
Ссылки на модули Controls и Classes должны присутствовать в предложении uses.
Проект “Graph”, в котором использован алгоритм Дейкстры, представлен файлом Graph.doc, который надо переименовать в Graph.RAR и распаковать.
procedureErase(varF: <Файловый тип>);
procedureRename(varF: <Файловый тип>; <Новое имя файла>: string);
procedureMKDir(<Имя папки>: string); // Создает пустую папку
procedureRMDir(<Имя папки>: string); // Удаляет пустую папку
functionIOResult: integer;
Функция возвращает значение 0, если операция открытия файла прошла успешно, и значение, отличное от 0, если открытие не заладилось (например, была попытка открыть на чтение файл, которого нет на диске, или была попытка открыть на запись файл с неприемлемым именем).
functionEOF(varF: <Файловый тип>) boolean;
Функция возвращает значение true, если маркер файла переместился за последний байт файла (достигнут конец файла).
Существуют альтернативные варианты процедур:
procedureRename(varF <Файловый тип>; <Новое имя файла>: PChar);
procedureMKDir(<Имя папки>: PChar);
procedureRMDir(<Имя папки>: PChar);
PChar – специальный «строковый» тип, разговор о нём пойдёт позже.