QStatusBa,狀態欄是位於主視窗的最下方,提供一個顯示工具提示等信息的地方。QMainWindow類裡面就有一個statusBar()函數,用於實現狀態欄的調用。以下例子都在QMainWindow的視窗前提下運行。 1.狀態欄添加 QLabel QLabel *msgLabel = new Q ...
QStatusBa,狀態欄是位於主視窗的最下方,提供一個顯示工具提示等信息的地方。QMainWindow類裡面就有一個statusBar()函數,用於實現狀態欄的調用。以下例子都在QMainWindow的視窗前提下運行。
1.狀態欄添加 QLabel
QLabel *msgLabel = new QLabel;
msgLabel->setStyleSheet(" QLabel{ color: red }");
// 設置字體顏色
msgLabel->setText("Ready :");
statusBar()->addWidget(msgLabel);
2.狀態欄下直接顯示信息 showMessage
statusBar()->setStyleSheet("color:green"); // 設置字體顏色
statusBar()->showMessage(tr("Ready"));
註意: 狀態欄有showMessage和其他控制項同時顯示的時候,他們之間會有覆蓋現象。
3.多個控制項一起放在狀態欄
QLineEdit *lineEdit = new QLineEdit;
lineEdit->setStyleSheet(" QLineEdit{ color: green }");
lineEdit->setText("to ");
statusBar()->addWidget(lineEdit);//增加一個QLineEdit
QLabel *myLabel = new QLabel;
myLabel->setStyleSheet(" QLabel{ color: green }");
myLabel->setText("somewhere");
statusBar()->addWidget(myLabel); // 增加一個QLabel
.....
還可以增加其他很多不同的控制項。
4.刪除指定的控制項
statusBar()->removeWidget(myLabel);
5. 常用屬性的設置
QTextEdit *toolsTip = new QTextEdit;
toolsTip->setMinimumSize(500, 25);
toolsTip->setMaximumHeight(20); // 最大高度20
toolsTip->setReadOnly(true); // 只讀
toolsTip->setFrameShape(QFrame::NoFrame); // 無邊框
toolsTip->setFrameStyle(QFrame::NoFrame); // 第二種方法 無表框
toolsTip->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); // 去掉滾動條
toolsTip->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); // 增加滾動條
statusBar()->addWidget(toolsTip);