【问题标题】:What is the basic idea behind programming a progress/status bar in MATLAB?在 MATLAB 中编写进度/状态栏的基本思想是什么?
【发布时间】:2011-04-10 19:07:42
【问题描述】:

我有一个正在开发的 MATLAB GUI,我想制作一个进度条或状态栏,以向用户显示某个脚本需要多长时间才能运行,或者它运行的位置相对于它何时完成。

我是这个 GUI 的新手,有人对如何做到这一点有任何想法吗?

我不了解 MATLAB 文件交换中的任何示例(也就是不知道如何添加到我的代码中)。

谢谢,

【问题讨论】:

  • 既然one of the many nice implementations on the FEX987654321@ 这么容易下载和使用,为什么还要制作一个?
  • 如何在我的代码中实现它?
  • 您想尝试将进度条的图形放入您的 GUI,还是只在另一个图形窗口中打开进度条?

标签: matlab progress-bar


【解决方案1】:

GUI 由可视部分和相关代码组成。 例如,像“按钮”这样的可视 GUI 组件与代码部分“回调函数”相关联。当您按下“按钮”时,将执行关联的“回调函数”。在 matlab 中编程 GUI 意味着在这些回调函数中填写您的代码。

当您的 GUI 元素使用 GUIDE 安排得很好时,可视化编辑器、所有使用元素的回调假人都会生成。您所要做的就是填写您的代码,实现所需的行为。

当您完成一些基本的 GUI 教程时,添加progress bar 可能是一项可行的任务。

【讨论】:

  • 谢谢,但我无法查看该网站...工作!我有我的 GUI,我在 GUIDE 中创建并工作,它工作得很好!只是进度条后面的loic有点麻烦
【解决方案2】:

最简单的答案就是调用waitbar。它已经在 matlab 中,并且会弹出一个带有状态栏的图形,随着您的进步而增长。

当然,您也可以下载 FEX 上的众多工具之一,所有这些都是 waitbar 上的细微变化。或者,您可以使用显示在命令窗口中的基于文本的栏。有时我会选择文本栏。

如果您真的坚持编写自己的工具并显示在图形窗口中,那并不难。我最近做了其中之一,其中条形图也随着我算法的进展而改变颜色。人们可以很容易地使用不断变化的颜色来表示一条信息,并将条形的长度作为第二条信息。因此,举例来说,优化可能会让条形图在每次迭代中变长,并随着目标本身变小而将颜色从红色变为绿色。

我记得,我只是在我的窗口中创建了一个文本框,其中的字符串类似于:'I'm thinking, get some coffee while you waiting.'然后我让盒子不可见,直到开始处理。现在,在每次迭代中,改变盒子的大小,或者填充它的颜色。完成后,再次使该框不可见。

【讨论】:

    猜你喜欢
    • 2018-11-06
    • 2013-08-30
    • 2022-09-30
    • 1970-01-01
    • 2011-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    相关资源
    最近更新 更多