Recommendations for MATLAB Apps Using Java and ActiveX

Recommendations for MATLAB Apps Using Java and ActiveX

Background

The undocumented JavaFrame property and javacomponent function, as well as the actxcontrol function, are capabilities that rely on third-party technologies (Java Swing and Microsoft COM, respectively), which over the years, have become legacy UI frameworks. MathWorks has been transitioning its UI building infrastructure to web technologies in response to customer requests for new web-based sharing workflows (MATLAB Web Apps and MATLAB Drive™). With this transition, maintaining support for javacomponent, JavaFrame, and actxcontrol limits our ability to further evolve the MATLAB® UI building platform to support the needs of our customers. As a result, these capabilities will be removed in a future release.

Recommendations

Over the past several releases, documented MATLAB functions and features have been added to replace the reliance on these undocumented and legacy features. The following table lists some of the most common features you can now access in MATLAB using documented functions. Users are encouraged to update their code to use these documented alternatives.

If you have additional javacomponent or JavaFrame usage scenarios that are not shown here, please complete our online surveys to help us better understand your needs. The surveys each take approximately 1–2 minutes to finish.

Documented MATLAB Recommendations

UI Capability

Recommendation

Introduced In

Works With

Custom components

ComponentContainer class

R2020b

uifigure

Custom app icon

Icon property

R2020b

uifigure

Modal figures

WindowStyle property

R2020b

uifigure

UI table row/column/cell styling

uistyle function

R2019b

uifigure

Video embedding (locally-hosted only)

uihtml function

R2019b

uifigure

HTML markup

uihtml function

R2019b

uifigure

UI table sorting

uitable ColumnSortable property

R2019a

uifigure

Image icons and branding

uiimage function

R2019a

uifigure

Layout managers

uigridlayout function

R2018b

uifigure

Scrollable containers

Scrollable property on figures and containers

R2018b

uifigure

Menu tooltips

Tooltip property on UI menus

R2018b

uifigure

Date pickers

uidatepicker function

R2018a

uifigure

Figure maximize or minimize

WindowState property

R2018a

figure

uifigure

Trees

uitree function

R2017b

uifigure

Spinners

uispinner function

R2016a

uifigure

Editable comboboxes

uidropdown function

R2016a

uifigure

UI tabs

uitabgroup and uitab functions

R2014b

figure

uifigure