精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

介紹兩種LabVIEW里實現進度條的方式

jf_V8z5L4Nx ? 來源:傳感測控物聯網 ? 2023-07-14 09:29 ? 次閱讀

進度條,是一個非常重要的UI元素。 工控軟件里有些任務耗時很長,為了不讓用戶感覺等待的過程過于漫長,也為了告訴用戶軟件還在正常運行、及時告訴用戶完成到什么程度了、大概還要多久可以完成,我們有必要給軟件設計一個進度條。 本篇推送里我們介紹兩種實現進度條的方式:

使用LabVIEW自帶的Horizontal Progress Bar控件。

使用WF Progress Bar插件。

1.Horizontal Progress Bar控件

Horizontal Progress Bar是LabVIEW自帶的進度條控件,本質上是個數值顯示控件,位于Numeric控件分類里。根據使用習慣的不同,大致上有以下幾種使用方式。

1)直接使用Horizontal Progress Bar 直接把代表進度的數值寫給Horizontal Progress Bar。 例如下面這個代碼,task i表示第i項任務,我們等待一下,模擬這個任務需要耗費點時間。這樣這個進度條隨著任務的執行就可以自動更新進度了。進度條的數據類型、最小值、最大值都可以在屬性里設置。

d299fdf4-21d5-11ee-962d-dac502259ad0.png

d2ad910c-21d5-11ee-962d-dac502259ad0.png

上面這個進度條實現方式非常簡單,但是缺點也很明顯:我們需要通過屬性節點或者局部變量來更新進度條,不能在子VI內更新。

2)SubVI + Horizontal Progress Bar控件 為解決子VI內更新進度的問題,我們可以設計一個專門用來更新進度條的子VI,把指向Horizontal Progress Bar的引用作為參數,在子VI內更新進度條的值。下面是更新進度條值(進度)的子VI代碼,比如我們命名為UpdateProgressBar.vi。

d2bcbca4-21d5-11ee-962d-dac502259ad0.png

d2c6410c-21d5-11ee-962d-dac502259ad0.png

需要更新進度的時候,調用這個VI即可。例如下面這個示例代碼。

d2d7b3c4-21d5-11ee-962d-dac502259ad0.png

3)全局變量+Horizontal Progress Bar控件 還有一種從各個層次VI變更主界面上進度條的方式就是使用全局變量。另外設計一個線程,這個線程負責定期讀取全局變量的值并更新進度條。 例如下面這個程序,我們調整Progress值時進度條將同步變化。

d2e62a76-21d5-11ee-962d-dac502259ad0.png

代碼如下:

d2f28cee-21d5-11ee-962d-dac502259ad0.png

上圖中下面的線程會定去讀取Progress全局變量的值并更新進度條顯示。

以上是進度條位于主界面的情況,如果我們需要動態彈出進度條進行提示呢?如果需要進度條滾動的同時給出文字提示呢?當然我們可以利用Horizontal Progress Bar寫一些專用的VI。不過這需要花費不少時間和精力。好在針對進度條這樣一個經常會用到的控件,已經有人將其設計成標準插件了。

下面我們看看WF Progress Bar插件。

2.WF Progress Bar插件

在VI Package Manager里搜索progress,找到WF ProgressBar,按提示安裝好插件。

d300b74c-21d5-11ee-962d-dac502259ad0.png

安裝好之后,我們可以在Addon里找到相關的函數和控件。

d3238934-21d5-11ee-962d-dac502259ad0.png

從Help菜單里打開Find Examples對話框,搜索Progress找到Progressbar test_WireFlow.vi。這是WF ProgressBar的示例項目。

d33b0eec-21d5-11ee-962d-dac502259ad0.png

下面這個GIF是Progressbar test_WireFlow.vi部分運行情況,展示了WF ProgressBar的一部分效果。這里面包括開始階段Splash Screen的加載進度條,都是WF ProgressBar插件實現的。

d35a0de2-21d5-11ee-962d-dac502259ad0.gif

Progressbar test_WireFlow.vi主要代碼如下:

Splash Screen進度條加載和顯示代碼:

d373fc16-21d5-11ee-962d-dac502259ad0.png

實現步驟:

1)創建ProgressBar實例,打開Splash Screen前面板。

2)指定ProgressBar最小值、最大值。

3)更新進度提示信息

4)更新進度值。

5)關閉進度條窗口。

6)關閉進度條對話(Session)。

3)和4)根據任務需要循環或順序執行。

不同主題的進度條加載和顯示代碼:

d3877c00-21d5-11ee-962d-dac502259ad0.png

實現步驟:

1)創建ProgressBar示例,設定主題(樣式),但是不打開前面板。

2)填寫保持不變的提示信息。

3)設定ProgressBar最小值、最大值。

4)打開前面板。

5)更新進度條提示信息。

6)更新進度值。

7)關閉ProgressBar。

8)關閉對話(Session)。

WF ProgressBar進度條的樣式是可以自定義的,詳細方法可參考WF ProgressBar的幫助文檔。 借助WF ProgressBar插件可以快速應用專業的進度條,讓軟件人機界面更加友好,感興趣的朋友不妨試一試。

以上是關于進度條的一些知識,簡單的和復雜的方法都介紹到了,稍加改變或變通就能夠滿足絕大多數應用開發需求,希望能夠幫助到你。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • LabVIEW
    +關注

    關注

    1963

    文章

    3652

    瀏覽量

    322467

原文標題:LabVIEW里進度條的兩種高效實現方式

文章出處:【微信號:傳感測控物聯網,微信公眾號:傳感測控物聯網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    LabVIEW原版Windows的進度條UI

    `通過調用.Net接口實現,感覺這個進度條的動畫效果還是不錯的,在這里分享一下 ` (文件被吞重傳)
    發表于 02-05 14:33

    關于進度條

    我用的labview8.6,初學者,在那能找到進度條啊!
    發表于 10-28 11:35

    進度條問題

    如何通過編程的方法改變進度條刻度的最大值?
    發表于 02-20 22:55

    自己做的好看的進度條

    看論壇有人做的進度條模仿者做了一個感覺還挺漂亮希望大家多提意見
    發表于 08-27 16:24

    【安富萊原創】【STemWin教程】第52章 PROGBAR-進度條控件

    使用GUIBulder建立多頁控件 52. 4 總結 52.1 進度條控件介紹進度條通常在應用程序中用于實現虛擬化,下面的截圖是設置了皮膚和沒有設置皮膚時的顯示效果:設置皮膚后顯示效
    發表于 05-16 14:45

    labview進度條

    這是一個labview進度條程序,比較好用
    發表于 08-04 14:30

    怎么用labview實現下載程序的進度條

    怎么用labview實現下載程序的進度條
    發表于 01-12 21:43

    第52章 PROGBAR-進度條控件

    52. 4 總結52.1 進度條控件介紹 進度條通常在應用程序中用于實現虛擬化,下面的截圖是設置了皮膚和沒有設置皮膚時的顯示效果: 設置皮膚后顯示效果如下:
    發表于 10-18 09:32

    labview進度條

    我用labview2017做了一個文件解壓和復制的vi,解壓過程中不知道真實的解壓進度,怎么才能做一個真實的進度條,要真是的,不是自己規定的,求助!!!
    發表于 04-26 09:10

    labview實現進度條

    進度條
    發表于 03-25 17:06

    怎么設置進度條

    RT!比如 我創建一個隨意長度的進度條然后我知道一個文件的大小 當把這個文件的數據讀完后進度條也跟著完畢請問那位弄過?我搞了下隨意創建 有問題有事候進度條會超出 邊框那么一點點!
    發表于 08-22 04:35

    HarmonyOS實戰——ProgressBar進度條組件基本使用

    里面的值 + 5//獲取進度條里面原本的值//兩種獲取進度條組件的方式://1.把onStart方法的pb移動到成員位置//2.onClick方法的形參,也表示被點擊的組件對象//下面
    發表于 09-22 23:31

    在Linux下實現進度條程序,通過makefile進行編譯

    1. 在Linux下實現進度條程序。 通過makefile進行編譯。 建議自主完成一個彩色的進度條。 寫Makefile文件的原因:Makefile文件的作用是命令行編譯鏈接命令nmake
    發表于 03-12 16:31 ?2089次閱讀

    LcdProgressBarDouble LCD顯示器顯示進度條

    電子發燒友網站提供《LcdProgressBarDouble LCD顯示器顯示進度條.zip》資料免費下載
    發表于 12-27 09:49 ?1次下載
    LcdProgressBarDouble LCD顯示器顯示<b class='flag-5'>兩</b>個<b class='flag-5'>進度條</b>

    【AWTK使用經驗】如何設計立體電池進度條

    AWTK是基于C語言開發的跨平臺GUI框架。《AWTK使用經驗》系列文章將介紹開發AWTK過程中一些常見問題與解決方案,例如:如何加載外部資源?如何設計自定義進度條?這些都會在系列文章進行解答
    的頭像 發表于 04-18 08:25 ?423次閱讀
    【AWTK使用經驗】如何設計立體電池<b class='flag-5'>進度條</b>?