Going from RxLib to Jvcl. What was changed?
This is translation of my post in Russian: Переход с RxLib на JVCL. Какие изменения? Original post was published in February 2010.
This article is written for those developers who still uses RxLib library in non-unicode Delphi and is thinking about going to Unicode.
In year 2002 RxLib was officially merged with Jedi Visual Component Library. JVCL has special tool for rapid conversion of all Rx components, functions and units to according JVCL code. See previous post Jvcl Dev Tools: JvclConvert.
Why not to stay with RxLib, and move to JVCL?
- JVCL is maintained. Bugs are fixed. You’ll always have JVCL version with newest Delphi IDE support.
- RxLib is abandoned. There are few enthusiasts who try to release patches, but they are not coordinated. Most of existing RxLib versions for Delphi 2009, 2010 and XE has its own unique code changes. Most of them have bugs either. Even version that was released in “official” RxLib project on SourceForge has bugs.
- JVCL supports Windows themes, RxLib is not.
This post contains list of all Rx components with according Jvcl component, package name, and short list of differences. You can find more detailed list in the next article “From RxLib to JVCL: details”.
Common properties
These properties were changed for all components:
- Rx property Ctl3D was replaced with Flat.
- Opaque property was replaced with Transparent.
Rx Tools Tab
Jv Non-Visual tab
TrxWindowHook –> TjvWindowHook
TrxTimerList –> TjvTimerList. TrxTimerTimerEvent has Tag property, but TJvTimerEvent doesn’t.
TrxPageManager –> TjvPageManager
TrxMergeManager –> TjvMergeManager
TrxMruManager –> TjvMruManager. Improved.
TrxMainMenu –>
TjvMainMenu. Integrated with other JVCL-components, added styles support, ItemPainter, separate ImageLists for different states.
TrxPopupMenu –> TjvPopupMenu. Significantly improved. Integrated with other JVCL-components, styles support and ItemPainter, separate ImageLists for different states.
TStrHolder –> TjvStrHolder
TrxTrayIcon –>
TjvTrayIcon. Component has few improvements.
TrxCalculator –>
TjvCalculator. New events: OnClose and OnShow
Jv Application, Forms tab
TrxAppEvents –> TjvAppEvents
TrxGradientCaption –> TjvGradientCaption. Improved.
Jv System tab
TrxFolderMonitor –> This component is missing in JVCL. The most suitable replacement for it, is TjvChangeNotify
component.
TClipboardViewer –> TjvClipboardViewer
Jv Dialogs tab
TrxLoginDialog-> TjvLoginDialog. Significantly improved. Instead of Ini-file, it uses TjvAppStorage.
TDualListDialog –> TjvDualListDialog. Improved.
Jv Bars, Panels tab
TSecretPanel -> TjvSecretPanel
TSpeedBar -> TjvSpeedBar.
Jv Persistence tab
TFormPlacement and
TFormStorage –>
TjvFormStorage. These components were joined to one component TjvFormStorage, which was improved heavily. It allows storing settings not only in Ini-files or Registry, but also in XML and database. This component is frequently used by the other JVCL components to store internal settings.
Jv Images, Animators tab
TPicClip –> TJvPicClip
Rx Controls
Every visual control has Windows themes support.
Jv Edits tab
TrxComboEdit –> TjvComboEdit. New property Action, DataConnector support (may act as DB-aware component).
TFilenameEdit –> TjvFileNameEdit. New picture on button, auto complete support, ImageList support for button’s picture.
TDirectoryEdit –> TjvDirectoryEdit. Updated picture for button. Browse for Directory dialog can be configured. It uses updated dialog. Also has autocomplete/autosuggest for directories on the disk. ImageList support for button’s picture.
TDateEdit –> TjvDateEdit. Added properties: DB (via DataConnector), Action.
TCurrencyEdit –> no.
TrxCalcEdit –> TjvCalcEdit
TrxSpinEdit –> TjvSpindEdit. Improved a little.
TrxRichEdit –> TjvRichEdit. Significantly improved.
Jv Lists, Combos, Trees tab
TFontComboBox –> TjvFontComboBox. Extended options, MRU (Most Recently Used) support, show icon for font, preview mode changed a little.
TColorComboBox –> TjvColorComboBox. Improved.
TrxDrawGrid –> TjvDrawGrid.
TTextListBox –> TjvTextListBox.
TrxCheckListBox –> TjvxCheckListBox (или TjvCheckListBox). Missing property HintSource.
Jv Labels tab
TrxLabel –> TjvLabel. Heavily improved.
Jv Visual tab
TrxClock –> TjvClock. Can display date.
Jv Trackers, Sliders, Splitters tab
TrxSlider –>
TjvxSlider. No support for Windows themes.
TrxSplitter –> TjvxSplitter. No support for Windows themes.
Jv Visual tab
TrxDice –> TjvDice (interesting, if anyone has used this component in serious project?:))
Jv Images, Animators tab
TAnimatedImage –> TjvAnimatedImage. Opaque property was renamed to Transparent.
TrxGifAnimator –> TjvGifAnimator. Added property Threaded.
Jv Buttons tab
TrxSpinButton –> TjvSpinButton.
TrxSpeedButton –> TjvSpeedButton. Added support for Hot Track Options.
TrxSwitch –> TjvSwitch
Rx DbAware
Jv Data Controls tab
TRxDBGrid -> TjvDBGrid. Significantly improved. Link to JVCL DbGrids review in Russian: описание Jvcl DbGrid-ов.
TrxDbComboEdit –> TjvDbComboEdit
TrxDbDateEdit –> TjvDbDateEdit
TRxDBLookupList -> TjvDbLookupList
TRxDBLookupCombo -> TjvDbLookupCombo
TRxLookupEdit -> TjvDbLookupEdit
TDBDateEdit -> TjvDbDateEdit.
TRxDBCalcEdit -> TjvDbCalcEdit
TRxDBRichEdit -> TjvDBRichEdit. Has same improvements as TjvRichEdit
TDBStatusLabel -> TjvDbStatusLabel
TRxDBComboBox -> TjvDbComboBox
Jv Data Access tab
TRxMemoryData -> TjvMemoryData. Improved: new features and events. Many bugs were fixed.
Jv BDE tab
TRxQuery -> TjvQuery
TSQLScript -> TjvSQLScript
TMemoryTable -> TjvBDEMemoryTable
TDBSecurity -> TjvDbSecurity. IniFileName property was replaced with AppStorage and AppStoragePath properties.
TQBEQuery -> TJvQBEQuery
TRxDBFilter -> TjvDbFilter
TDBProgress -> TJvDbProgress
TBdeItems -> TjvBDEItems
TTableItems -> TjvTableItems
TDatabaseItems -> TjvDatabaseItems
TDBIndexCombo -> TjvDbIndexCombo
Neccessary JVCL packages
Here is the list of JVCL packages that you will need to have full set of RxLib components in JVCL:
- JVCL Application and Form Components – TjvAppEvents, TjvGradientCaption
- JVCL BDE Components – components from Jv Bde tab
- JVCL Core Components – AppIni
- JVCL Custom Controls – TjvTrayIcon
- JVCL Database Components – Db controls
- JVCL Dialog Components – TjvDualListDialog, TjvLoginDialog
- JVCL Multimedia and Image Componets – TjvAnimatedImage, TjvGifAnimator
- JVCL Non-Visual Components – TjvMergeManager, TjvPageManager, TjvStrHolder
- JVCL Standard Controls – most of the edit controls (edits, comboboxes)
- JVCL System Components – TjvFormStorage, TjvChangeNotify, TjvClipboardViewer, TjvMRUManager, TjvWindowHook
- JVCL Visual Controls – TjvxSplitter, TjvSpeedBar, TjvClock, TjvDice

LazyDelphiBuilder on UserVoice
Recent Comments