Полное собрание исходников
| Добавил: TStas (28-01-2006) | Просмотреть Скачать |
| Модуль VeryLongMath. В этом модуле определен тип: VeryLongInt - целые знаковые числа и математика для них. Это числа по модулю 100. Состоят из модуля, в котором задом наперед записаны разряды и знака (True - знак есть, т. е. число меньше нуля). Если числа не инициализированы, то ошибки не возникает, они автоматически инициализируются при обращении к функциям и им присваивается 0. Оптимизация скорости выполнения: при переводе в строку длинна строки расчитывается сразу и устанавливается один раз. При переводе строки в число части строки только копируются. При умножении длинна результата также устанавливается один раз. Возведение в степень производится с минимальным числом умножений, см. код функции. Так, например при возведении в степень 100 будет произведено не 100, а только 8 операций умножения. Есть функция извлечения корня, которая возвращает точный ли он, а если неточный, то ближайшее целое. TProgressEvent - процедурный тип, с помощью которого можно отображать процесс извлечения корня или вычисления НОК и НОД, а также остановить процесс. Умеет считать НОК и НОД для двух длинных чисел. При ошибках (деление на 0, корень из отрицательного числа) возбуждаются исключения. Второй модуль - NumericParser. Использует VeryLongMath. В этом модуле определен класс парсера. Парсер принимает строку и, возможно, процедуру TErrorEvent, с помощью которой он может указать место ошибки, если таковая возникла. Чтобы он парсил, нужно вызвать метод Parse. Понимает переменные, если создать TStrings и в свойства Objects записать длинные числа в виде TNumericObj, и записать полученный TStrings в свойство VarList. Понимает выражения двух типов - длинные числа или логичекие. Есть свойство ResultType, в котором записано, получилось ли парсить, а если - да, то каков тип выражения. Есть свойство Corrected, в котором записано, корректна ли выражение. Парсер понимает комментарии, которые находятся внутри фигурных скобок. Регистронезависим. Понимает функции Abs, Sqr, Sqrt, GCD (НОК), lcm (НОД), логические константы true и false. На основе парсера есть функция Eval, которая принимает строку и возвращает результат ее выполнения в виде строки. Имеется тестовый проект в виде калькулятора. | |
| 21 кб | |
| Добавил: DSKalugin (21-01-2006) | Просмотреть Скачать |
| BackTime - утилита для обхода ограничения программ по сроку действия(времени) Подробное описание http://deep.nightmail.ru/backtime.html | |
| 171 кб | |
| Добавил: НабережныхС (21-01-2006) | Просмотреть Скачать |
| Пример работы с наборами свойств DOC-файлов и файлов на NTFS. | |
| Delphi, Office, Система | 12 кб |
| Добавил: Loginov (21-01-2006) | Просмотреть Скачать |
| Модуль MenuReader предназначен для добавления к пунктам меню TMenuItem пунктов, описанных в xml-файле. К этим данным относятся: - Название пункта меню; - Имя запускаемого файла или команды; - Имя файла с иконкой (*.exe, *.dll, *.ico) и индекс иконки; - Набор параметров, передаваемых по умолчанию, и индекс набора; Величина вложенности пунктов меню не ограничивается. Вы можете назначать собственные обработчики выбора пунктов меню (по умолчанию выполняется подпрограмма ShellExecute()). В архиве находится демонстрационное приложение, с помощью которого вы сможете оценить возможности данного модуля. Информацию по описанию пунктов меню смотрите в файле MenuEx.xml. Для разбора xml-файла был задействован интерфейс, предоставляемый стандартной библиотекой msxml.dll. Примеры: AddItemsToMenu(MainMenu1.Items, 'MainMenu.xml'); AddItemsToMenu(PopupMenu1.Items, 'PopupMenu.xml'); AddItemsToMenu(MainMenu1.Items.Find('Файл'), 'FileMenu.xml'); | |
| 8 кб | |
| Добавил: antonn (17-01-2006) | Просмотреть Скачать |
| Пример создания окна-заставки с переменной прозрачностью. Работает на win2k и выше. | |
| 128 кб | |
| Добавил: mor (16-01-2006) | Просмотреть Скачать |
| Чат с шифрованием соединения. Все необходимое для компиляции есть в архиве. | |
| Delphi, Передача данных, Сети, Чат, Шифрование | 53 кб |
| Добавил: TStas (16-01-2006) | Просмотреть Скачать |
| Индикатор прогресса. Нужен, чтобы отображать процесс выполения длительных циклов. В отличии от простого ProgresBar'а показывает, сколько времени прошло с момента запуска и сколько примерно осталось. Сделан из TGauge, TstasusBar, TPanel и TTimer. Основные методы: Start(StartValue, StopValue: Int64) и Stop. Первый запускает процесс отображения цикла, второй останавливает его. Чтобы периодически отображать изменения величины внутри цикла, надо изменять свойство CurrentValue: Int64. При этом вызывается Application.ProgressMessages, чтобы программа не казалась зависшей при длительном счете. Один раз в секунду изменения отображаются. Генерирует события OnStart при запуске отображения и OnStop при остановке. Свойство StopedVisible: Boolean определяет, должен ли индикатор быть видимым, если процесс остановлен. По умолчанию False – не должен. | |
| Delphi, Компоненты | 28 кб |
| Добавил: kastorskiy (13-01-2006) | Просмотреть Скачать |
| Програмка, демонстрирующая поиск кратчайшего пути в лабиринте с помошью волнового алгоритма. Подробно прокоментирована. Написана в общем то с целью обьяснения самого волнового алгоритма, а не того как его реализовать. Т.е. при её работе не просто находится кратчайший путь, а показывается, как именно он находится. Тестировано на Turbo C++ 3.0 | |
| C++, Алгоритмы | 2 кб |
| Добавил: Gorger (11-01-2006) | Просмотреть Скачать |
| Модуль SofisticForm - указываете в качестве аргумента TBitmap, и строится вам форма по этому TBitmap | |
| Delphi, Графика | 1 кб |
| Добавил: NikNet@Arazel (09-01-2006) | Просмотреть Скачать |
| Аналог драйвера giveio.sys на DELPHI для доступа к портам ввода/Вывода. | |
| Delphi, Система | 11 кб |
©2007-2008 Progler.Ru