matlab - 如何制作相应调整其大小的动态 GUI
问题描述
在 MATLAB GUI 中,我希望窗口根据输入的数量变长或变短。输入的数量是可变的,每个输入名称将是一个在另一个之下。我希望它得到最合适的外观。我找不到如何通过代码更改窗口的大小。
输入将如下所示:
inputA
inputB
inputC
inputD
inputE
...
另外,我可以接受通过根据窗口大小调整输入的文本大小来做到这一点。(窗口大小可能是恒定的)
最后,我想学习当单位是字符或像素时如何获取 GUI 窗口的大小。我认为当单位改变时它应该有不同的大小。
提前致谢。
解决方案
创建 GUI 后,您可以使用以下代码根据项目数量调整窗口大小
pos = get(gcf, 'position');
set(gcf, 'position', [ pos(1:3) pos(4)*nItems]);
您还可以在窗口中调整 GUI 的大小。假设 h 是您放置文本的容器的句柄,并且它只显示一个项目。您更改了文本,现在想要调整 GUI 的大小并保持图形的大小相同。
pos = get(h, 'extent');
set(h, 'extent', [ pos(1:3) pos(4)*nItems]);
推荐阅读
- python - Python Pandas - 获取特定月份的第一天和最后一天的行
- c++ - 更改 OpenCV 的卡尔曼滤波器中的增益以使其更具响应性
- html - 在另一个类中使用一个类
- java - 如何使用自定义验证测试 REST 控制器
- webrtc - RTCPeerConnection.generateCertificate() 返回一个空对象
- reactjs - React Hooks - 上下文
- javascript - 通过javascript提取文本时如何在textarea上保留文本\r\n格式
- reactjs - 为什么 React 组件只有在我刷新页面后才能工作?
- redirect - TCL/TK - 如何从包中捕获标准错误输出?
- c - 为什么下面的方法1不能实现排序功能,而方法2可以呢?