attachScrollPanelTo - add scroll-panel to a uipanel or axes

版本 1.0.0 (80.3 KB) 作者: Yair Altman
Places the specified control/uipanel inside a scroll-panel that automatically appears when the container shrinks (resizes)
368.0 次下载
更新时间 2018/7/25

查看许可证

Syntax:
[hScrollPanel, hPanel] = attachScrollPanelTo(hObject);

Description:
attachScrollPanelTo places the specified control/uipanel handle in a scroll-panel (a Java JScrollPanel object). If the specified handle is not a uipanel, then it is placed inside a tightly-fitting borderless uipanel, which is then placed within the new scroll-panel.

The new scroll-panel automatically resizes with its containing figure/uipanel or other container (the specified handle's original parent). Scrollbars automatically appear as needed, when the container shrinks or expands.

The returned hScrollPanel can be seperately customized (for example, programmatically setting the viewport's ViewPosition): see usage examples below

The returned hPanel is the Matlab panel containing the input hObject. When hObject is a uipanel, hPanel==hObject; otherwise, hPanel is the tightly-fitting borderless panel that is created for the scroll-panel.

Calling attachScrollPanelTo with no input handle displays a demo.

Examples:
attachScrollPanelTo() %display the demo
attachScrollPanelTo(hPanel) %place the specified panel in a scroll-panel

hScroll = attachScrollPanelTo(hPanel);
hScroll.ViewOffset = [30,50]; %set viewport offset (30px right, 50px down)
set(hScroll, 'ViewOffset',[30,50]); %equivalent alternative

Limitations:
- HG2 figures created with GUIDE or the figure command - works ok
- HG2 figures created with AppDesigner or uifigure command - does NOT work
- HG1 figures created on R2014a or older - does NOT work

Technical details:
https://undocumentedmatlab.com/blog/scrollable-gui-panels

Disclaimer:
This utility relies on undocumented functionality. It works on Matlab R2014 onward, but may fail to work at some future release. Use at your own risk!

引用格式

Yair Altman (2024). attachScrollPanelTo - add scroll-panel to a uipanel or axes (https://www.mathworks.com/matlabcentral/fileexchange/68325-attachscrollpanelto-add-scroll-panel-to-a-uipanel-or-axes), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2017b
与 R2014b 及更高版本兼容
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Migrate GUIDE Apps 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.0.0