跳至主要內容

佈局

Jia-Yin大约 2 分鐘coursecomm

GUI Hint

所有 QT GUI 元件都有一個名為 GUI Hint 的參數。此參數可以用來設定元件在視窗內排列的位置和大小,以及位在哪一個 QT GUI Tab Widget 的分頁中。

來源: wiki.gnuradio.org
來源: wiki.gnuradio.org

GUI 提示的格式為:(row, column, row span, column span)
例如,我們可能有一個4x3的網格佈局,每個 GUI 元件的排列如右側圖中所示。

來源: wiki.gnuradio.org
來源: wiki.gnuradio.org

讓我們看一個 幅度調變 (AM) 的範例:

參數如下:

  • samp_rate: 1e6
  • Wav File Source: Download file hereopen in new window (You can use an Audio source with sample rate=44.1k)
  • Signal Source: Frequency=400e3
  • GUI Range: Default=1, Start=0, Stop=2, Step=0.1, GUI Hint:0,0,1,8
  • Frequency Sink (Source): GUI Hint:1,0,4,8
  • Frequency Sink (AM): GUI Hint:5,0,4,8

模擬結果:

QT GUI Tab Widget

Tab Widget 在圖形介面的應用程式中經常看到,如下圖所示。

QT GUI Tab Widget 最重要的參數是 Num Tabs,用於設定分頁數量。假設其名稱為 qtab,且 Num Tabs=2。那麼,我們可以使用 GUI Hint: qtab@0 將元件放置在分頁 0;用 GUI Hint: qtab@1 將元件放置在分頁 1。

相關信息

注意:QT GUI Tab Widget 也是一個 GUI 元件,因此我們可以使用 GUI Hint 來設定其大小和位置。

讓我們利用 QT GUI Tab Widget 來建立一個簡單的系統。

模擬結果:

我們可以使用以下的 GUI Hint 語法將元件放置在為特定分頁的某個位置和大小:
tab_id@tab_index:row,col,row_span,col_span


練習 3

修改上面的系統範例,以產生下圖的結果,其中有兩個分頁:一個為"Time",另一個為"Frequency"。對於每個分頁,上面應顯示原始信號,下面則顯示相對應的幅度調變 (AM) 信號。