Qt 狀態列設定

2021-08-22 16:29:05 字數 1578 閱讀 4155

目錄

一、新增動作狀態提示

二、顯示其他臨時資訊

三、顯示永久資訊

正文一、新增動作狀態提示

2.下面進入設計模式,在action編輯器中選中新建動作,然後在右面的屬性編輯器中將其statustip更改為「新建檔案」。如下圖所示。

3.這時執行程式,當游標移動到新建動作上時,在下面的狀態列將會出現設定的提示。如下圖所示。

我們可以按照這種方式來設定其他動作的狀態列提示資訊。

二、顯示其他臨時資訊

狀態資訊可以被分為三類:臨時資訊,如一般的提示資訊,上面講到的動作提示就是臨時資訊;正常資訊,如顯示頁數和行號;永久資訊,如顯示版本號或者日期。可以使用showmessage()函式來顯示乙個臨時訊息,它會出現在狀態列的最左邊。一般用addwidget()函式新增乙個qlabel到狀態列上用於顯示正常資訊,它會生成到狀態列的最左邊,可能會被臨時訊息所掩蓋。

這樣就可以在執行程式時顯示指定的狀態提示了。效果如下圖所示。

這個提示還可以設定顯示的時間。如:

這樣提示顯示2000毫秒即2秒後會自動消失。

2.下面我們在狀態列新增乙個標籤部件用來顯示一般的提示資訊。因為無法在設計模式向狀態列新增部件,所以只能使用**來實現。先在mainwindow.h檔案中新增類的前置宣告:

class qlabel;

然後新增乙個私有物件定義:

qlabel *statuslabel;

下面到mainwindow.cpp檔案中,先新增標頭檔案宣告:

#include 

然後到建構函式中將前面新增的:

一行**注釋掉,再新增如下**:

statuslabel = new qlabel;

statuslabel->setminimumsize(150, 20); // 設定標籤最小大小

statuslabel->setframeshape(qframe::winpanel); // 設定標籤形狀

statuslabel->setframeshadow(qframe::sunken); // 設定標籤陰影

ui->statusbar->addwidget(statuslabel);

這時執行程式,效果如下圖所示。

下面就可以在需要顯示狀態的時候,呼叫statuslabel來設定文字了。

三、顯示永久資訊

如果要顯示永久資訊,要使用addpermanentwidget()函式來新增乙個如qlabel一樣的可以顯示資訊的部件,它會生成在狀態列的最右端,不會被臨時訊息所掩蓋。

我們在建構函式中新增如下**:

qlabel *permanent = new qlabel(this);

permanent->setframestyle(qframe::box | qframe::sunken);

permanent->settext(

tr("yafeilinux.com"));

permanent->settextformat(qt::richtext);

permanent->setopenexternallinks(true);

ui->statusbar->addpermanentwidget(permanent);

Qt設定狀態列

主視窗的狀態列指標 h qstatusbar statusbar const 定義 cpp this statusbar 呼叫資訊種類 臨時,一般,永久。1 臨時資訊 顯示臨時資訊 statusbar showmessage tr 系統已初始化完成 6000 顯示臨時資訊,6s後關閉2 一般資訊 m...

Qt開發 狀態列設定

1.在qt 裡面,狀態列顯示的資訊有三種型別 臨時資訊 一般資訊和永久資訊。其中,臨時資訊指臨時顯示的資訊,比如qaction 的提示等,也可以設定自己的 臨時資訊,比如程式啟動之後顯示ready,一段時間後自動消失 這個功能可 以使用qstatusbar 的showmessage 函式來實現 一般...

Android 設定狀態列顏色 沉浸式狀態列

原文 另參考令人困惑的fitssystemwindows 而最新安卓4.4系統的通知欄沉浸模式就是在軟體開啟的時候通知欄和軟體頂部顏色融為一體,這樣不僅可以使軟體和系統本身更加融為一體。就是手機的通知欄的顏色不再是白色 黑色簡單的兩種了,本人用的小公尺4手機,公尺4手機中的自帶軟體都支援沉浸式通知欄...