Главная » Статьи |
Всего материалов в каталоге: 14 Показано материалов: 1-12 |
Страницы: 1 2 » |
Компонент RichMemo, входящий в Lazarus Code and Component Repository, значительно расширяет функционал многострочного редактора текста. Он позволяет гибко управлять:
Здесь описаны некоторые особенности работы в RichMemo с таблицами и ссылками в приложениях для ОС Windows. |
Дорабатывая программу Word_test, решил добавить проверку орфографии (spell checking) в редактор словарей. В данном материале описываю некоторые особенности реализации функционала проверки орфографии в FPC/Lazarus программах с использованием динамической C++/C библиотеки Hunspell в Windows. |
В этом году продолжил работу над серией программ, предназначенными для тренировки/тестирования старшего внука (см. Mathematics и Mathematics2). На этот раз настала очередь программы тестирования правописания словарных слов. Для подготовки файлов словарей пришлось предусмотреть простенький текстовый редактор, в котором, естественно, были реализованы операции работы с буфером обмена (clipboard) Windows — Copy, Cut и Paste. Чтобы управлять доступностью операции Paste, пришлось реализовать мониторинг изменений буфера обмена Windows. Здесь приведены некоторые итоги моих попыток реализации мониторинга. |
Во второй части было показано, что в текущей реализации невозможно использование классов–наследников TCustomComparer<T>. В данном материале описывается возможное исправление этой ситуации. |
В первой части было рассмотрено использование для построения функций хеширования интерфейсов IEqualityComparer<T> и IExtendedEqualityComparer<T>, реализованных в модуле Generics.Defaults, который входит в состав FreePascal Generics.Collections library. В этой части будет описан опыт применения наследников класса TCustomComparer<T> для хеширования строковых данных. В ходе этой попытки было выяснено, что некоторые особенности реализации классов приводят к невозможности использования этих классов. |
Однажды мне понадобилось применить в некотором алгоритме хеш-функцию. Поиск в Интернете вывел меня на FreePascal Generics.Collections library, в которой предлагался целый набор таких функций. Кроме того имелся набор классов и интерфейсов для построения Compares, EqualityComparers и HashFactories. Все это было написано в виде generics с возможностью настройки для разных типов входных данных. Я решил попробовать применить библиотеку в своей работе, и вот что у меня получилось. |
В свое время при изучении модифицированного метода узловых потенциалов (ММУП) мне очень помогла книга: Влах И., Сингхал К. Машинные методы анализа и проектирования электронных схем. Особенно мне понравилась таблица, в которой было приведено представление идеальных элементов при составлении матриц ММУП. В данном материале я привожу несколько доработанную таблицу, которая может помочь при составлении матриц ММУП. |
В продолжении предыдущего материала. При подготовке справочного файла вдруг выяснил, что утилиты MAKESKEL и FPDOC некорректно обрабатывают директивы IfDef и IfNDef при наличии каких-либо символов между условным идентификатором и закрывающей скобкой }. Анализ показал, что это обусловлено ошибкой в реализации класса TPascalScanner, который входит в состав модуля PSCANNER - файл модуля: $(LazarusDir)\FPC\3.0.4\SOURCE\PACKAGES\FCL-PASSRC\src\pscanner.pp, который является частью Free Component Library. По данной ошибке заведен запрос на FreePascal bugtracker'е: issue ID 0034711. |
Из-за особенностей реализации в языке FreePascal применение внутри других циклов цикла FOR … IN … DO для перечислимых классов может привести к увеличению времени выполнения программ |
При подготовке справочного файла формата CHM обнаружил ошибку в редакторе документации LazDE. По данной ошибке заведен запрос на FreePascal bugtracker'е: issue ID 0034631. |
Изложены основные моменты определения параметров дискретных резистивных схем замещения нелинейных элементов при анализе динамических режимов электрических цепей. Предполагается применение BDF для анализа процесса во временной области и итеративного метода Ньютона–Рафсона на каждом шаге интегрирования. Рассмотрено применение формулы прогноза для определения начальных приближений итерационного процесса Ньютона–Рафсона. |
Описываются понятие дискретных резистивных схем замещения нелинейных элементов, которые получаются при приложении метода Ньютона–Рафсона для анализа нелинейных цепей постоянного тока. |