[英]How to display text in main window?
我是Qt的新手,我很難找到一個簡單的例子來說明如何在主窗口上顯示一些文字。 例如,我只想在字符串中保存一些文本並在主窗口中顯示內容。 我想在mainwindow.cpp
做這樣的事情,但無濟於事。
this->setText("Hello, world!\n");
在你的mainwindow構造函數中做這個 :
#include <QLabel>
...
QLabel *label = new QLabel(this);
label->setText("first line\nsecond line");
有各種各樣的方式來顯示這樣的東西,這自然只是其中之一,但它應該讓你去。
這是一個簡單的示例,顯示了沒有自定義QMainWindow
子類的情況:
#include <QLabel>
#include <QMainWindow>
#include <QApplication>
int main(int argc, char **argv)
{
QApplication application(argc, argv);
QMainWindow mainWindow;
QLabel *label = new QLabel(&mainWindow);
label->setText("first line\nsecond line");
mainWindow.show();
return application.exec();
}
TEMPLATE = app
TARGET = main
QT += widgets
SOURCES += main.cpp
qmake && make && ./main
你需要在mainWindow
某個地方使用QLabel
,然后再做
label->setText("Hello, world!");
然后文本將出現在label
。
所有小部件都源自相同的基類QWidget ,可以通過調用show()來顯示它
因此,在最基本的層面上,Qt允許您創建任何窗口小部件並使用最少的代碼顯示它,甚至無需顯式聲明主窗口: -
#include <QApplication>
#include <QLabel>
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QLabel *label = new QLabel(&mainWindow);
label->setText("Hello World");
label->show();
return app.exec(); // start the main event loop running
}
接下來,每個Widget都可以提供一個父窗口小部件,允許將QLabel添加到MainWindow(或任何其他窗口小部件),如@lpapp提供的答案所示
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.