QT界面GUI設計之Lable圖片及文字顯示
今天主要寫一下Qt界面設計的Label相關用法,因爲沒有系統的學習,所以今天發現以前錯了好多,今天記錄一下,Label的相關用法。
首先是搭建一個Label框,這個簡單,在設計師裏直接拖進去就可以,這時候,在對象查看器裏,會顯示拖入的當前label的名稱。
點擊拖入的label,在右側屬性編輯器中,設置相關參數
其中:
QFrame->frameShape,選擇邊框
QFrame->frameShadow,邊框的陰影
QFrame->lineWidth,邊框的線寬
Qwidget->font,設置字體等
設置完成後,在main.cpp中相關函數代碼如下:
文字顯示:
QString s = QString("Hello Everyone");
ui.label_2->setText(s);
圖片顯示:
OpenFile = QFileDialog::getOpenFileName(
this,
"Choose Files",
"",
"Image Files(*.jpg *.png *.bmp *.pgm *.pbm);;Movie Files(*.mp4);;All(*.*)");
QImage img_1;
img_1.load(OpenFile);
ui.label->setPixmap(QPixmap::fromImage(img_1));
ui.label->show();
如果事先沒有用設計師搭一個頁面,也可以通過程序一個Label來進行相關顯示。
QLabel *label_1 = new QLabel(this);
cvtColor(frame, frame_1, COLOR_BGR2RGB);//圖像在QT顯示前,必須轉化成QImage格式,將RGBA格式轉化成RGB
QImage img_1((const unsigned char*)(frame_1.data), frame_1.cols, frame_1.rows, QImage::Format_RGB888);
label_1->setPixmap(QPixmap::fromImage(img_1));
label_1->resize(QSize(img_1.width(), img_1.height()));
label_1->setGeometry(0, 0, 416, 416);
label_1->show();
當然,可以新建一個textEdit,完成文字顯示
//文字實時顯示
QTextEdit *textEdit = new QTextEdit(this);
textEdit->setGeometry(QRect(0,0,200, 100));
textEdit->setText("HELLO");
textEdit->show();