Это материал для тех, кто ещё использует библиотеку RxLib и рассматривает возможность перехода на юникод. В 2002-году библиотека RxLib была официально включена в состав JVCL. В JVCL есть утилита для быстрой замены всех Rx компонентов, функций и юнитов на JVCL-версии. См. пост Jvcl Dev Tools: JvclConvert.
Почему стоит перейти на JVCL:
- В отличие от RxLib, JVCL развивается. Ошибки исправляются. Регулярно выходят версии с поддержкой новых версий Delphi.
- JVCL контролы поддерживают новые версии Windows и Windows-стили.
В этом посте перечислены все Rx компоненты. Для каждого указан соответствующий Jvcl компонент, package, и краткий список отличий.
Общие свойства
Следующие свойства были заменены у всех компонентов:
- Свойство Ctl3D заменено на Flat.
- Свойство Opaque заменено на Transparent.
Закладка Rx Tools
Закладка Jv Non-Visual
TrxWindowHook –> TjvWindowHook
TrxTimerList –> TjvTimerList. У TrxTimerTimerEvent есть свойство Tag, а у TJvTimerEvent его нет.
TrxPageManager –> TjvPageManager
TrxMergeManager –> TjvMergeManager
TrxMruManager –> TjvMruManager. Доработан.
TrxMainMenu –>
TjvMainMenu. Интегрирован с остальными JVCL-компонентами, добавлена поддержка стилей, ItemPainter, отдельные ImageLists для разных состояний.
TrxPopupMenu –> TjvPopupMenu. Существенно доработан. Интегрирован с остальными JVCL-компонентами, есть поддержка стилей и ItemPainter, отдельные ImageLists для разных состояний.
TStrHolder –> TjvStrHolder
TrxTrayIcon –>
TjvTrayIcon. Компонент был немного доработан.
TrxCalculator –>
TjvCalculator. Новые события: OnClose и OnShow
Закладка Jv Application, Forms
TrxAppEvents –> TjvAppEvents
TrxGradientCaption –> TjvGradientCaption. Доработан.
Закладка Jv System
TrxFolderMonitor –> Этого компонента нет в JVCL. Наиболее подходящая замена – это TjvChangeNotify
.
TClipboardViewer –> TjvClipboardViewer
Закладка Jv Dialogs
TrxLoginDialog-> TjvLoginDialog. Существенно доработан. Вместо Ini-файла теперь использует TjvAppStorage.
TDualListDialog –> TjvDualListDialog. Доработан.
Закладка Jv Bars, Panels
TSecretPanel -> TjvSecretPanel
TSpeedBar -> TjvSpeedBar.
Закладка Jv Persistence
TFormPlacement и
TFormStorage –>
TjvFormStorage. TjvFormStorage были существенно доработаны. Позволяет хранить настройки не только в Ini-файле и в Registry, но и в XML, и базе данных. Этот компонент используется другими JVCL компонентами для хранения внутренних настроек.
Закладка Jv Images, Animators
TPicClip –> TJvPicClip
Rx Controls
У всех визуальных контролов появилась поддержка тем Windows.
Закладка Jv Edits
TrxComboEdit –> TjvComboEdit. Добавлена поддержка стилей Windows, свойство Action, поддержка DataConnector (работа с БД).
TFilenameEdit –> TjvFileNameEdit. Добавлена поддержка стилей, обновлена иконка на кнопке, добавлено автодополнение (при наборе названия файла с клавиатуры появится выпадающий список подходящих файлов), поддержка ImageList для картинки на кнопке.
TDirectoryEdit –> TjvDirectoryEdit. Добавлена поддержка стилей, обновлена иконка на кнопке. Добавлена возможность настраиваться опции Win32 диалога. Используется обновлённый диалог. Добавлено автодополнение (при наборе названия файла с клавиатуры появится выпадающий список подходящих файлов), поддержка ImageList для картинки на кнопке.
TDateEdit –> TjvDateEdit. Добавлено: БД (через DataConnector), Action.
TCurrencyEdit –> нет.
TrxCalcEdit –> TjvCalcEdit
TrxSpinEdit –> TjvSpindEdit. Немного доработан.
TrxRichEdit –> TjvRichEdit. Функционал существенно расширен. Подробнее смотрите здесь: TjvRichEdit.
Закладка Jv Lists, Combos, Trees
TFontComboBox –> TjvFontComboBox. Расширены опции, добавлена поддержка MRU (Most Recently Used), добавлено отображение иконки типа шрифта, немного изменён режим preview.
TColorComboBox –> TjvColorComboBox. Немного доработан.
TrxDrawGrid –> TjvDrawGrid.
TTextListBox –> TjvTextListBox.
TrxCheckListBox –> TjvxCheckListBox (или TjvCheckListBox). Пропало свойство HintSource.
Закладка Jv Labels
TrxLabel –> TjvLabel. Существенно доработан.
Закладка Jv Visual
TrxClock –> TjvClock. Появилась возможность отображать дату.
Закладка Jv Trackers, Sliders, Splitters
TrxSlider –>
TjvxSlider. При перемещении бегунка курсор больше не изменяется. Поддержки тем Windows нет.
TrxSplitter –> TjvxSplitter. Поддержки тем Windows нет.
Закладка Jv Visual
TrxDice –> TjvDice (интересно, этот компонент хоть кто-нибудь всерьёз использует?:))
Закладка Jv Images, Animators
TAnimatedImage –> TjvAnimatedImage. Свойство Opaque переименовано в Transparent.
TrxGifAnimator –> TjvGifAnimator. Добавлено свойство Threaded.
Закладка Jv Buttons
TrxSpinButton –> TjvSpinButton.
TrxSpeedButton –> TjvSpeedButton. Появилась настройка Hot Track Options.
TrxSwitch –> TjvSwitch
Rx DbAware
Закладка Jv Data Controls
TRxDBGrid -> TjvDBGrid. Существенно доработан. См. описание Jvcl DbGrid-ов.
TrxDbComboEdit –> TjvDbComboEdit
TrxDbDateEdit –> TjvDbDateEdit
TRxDBLookupList -> TjvDbLookupList
TRxDBLookupCombo -> TjvDbLookupCombo
TRxLookupEdit -> TjvDbLookupEdit
TDBDateEdit -> TjvDbDateEdit.
TRxDBCalcEdit -> TjvDbCalcEdit
TRxDBRichEdit -> TjvDBRichEdit. Включает те же улучшения что и TjvRichEdit
TDBStatusLabel -> TjvDbStatusLabel
TRxDBComboBox -> TjvDbComboBox
Закладка Jv Data Access
TRxMemoryData -> TjvMemoryData. Доработан: добавлены новые свойства и события.
Закладка Jv BDE
TRxQuery -> TjvQuery
TSQLScript -> TjvSQLScript
TMemoryTable -> TjvBDEMemoryTable
TDBSecurity -> TjvDbSecurity. Свойство IniFileName заменено на AppStorage и AppStoragePath.
TQBEQuery -> TJvQBEQuery
TRxDBFilter -> TjvDbFilter
TDBProgress -> TJvDbProgress
TBdeItems -> TjvBDEItems
TTableItems -> TjvTableItems
TDatabaseItems -> TjvDatabaseItems
TDBIndexCombo -> TjvDbIndexCombo
Необходимые JVCL пакеты
Для перехода понадобятся следующие JVCL пакеты:
- JVCL Application and Form Components - TjvAppEvents, TjvGradientCaption
- JVCL BDE Components - компоненты с закладки Jv Bde
- JVCL Core Components – AppIni
- JVCL Custom Controls – TjvTrayIcon
- JVCL Database Components - Db контролы
- JVCL Dialog Components – TjvDualListDialog, TjvLoginDialog
- JVCL Multimedia and Image Componets – TjvAnimatedImage, TjvGifAnimator
- JVCL Non-Visual Components – TjvMergeManager, TjvPageManager, TjvStrHolder
- JVCL Standard Controls – большая часть редакторов (эдиты, комбобоксы)
- JVCL System Components – TjvFormStorage, TjvChangeNotify, TjvClipboardViewer, TjvMRUManager, TjvWindowHook
- JVCL Visual Controls – TjvxSplitter, TjvSpeedBar, TjvClock, TjvDice
Версия для мобильного

13 человек заметили этот пост: