Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Adding a text to the QTabWidget in c++



  • I have class which inherits QTabWidget. Inside the generated tab I want to display some text.The text should not be editable by the user.But during the application execution there can be a case/s which will cause the text change. Which class should I use for text? Thought about QTextEdit - but it doesn`t look like best idea - since the user should not change the text.Also thought about QTextLabel - but it also is not good - since the application displays text not label.



  • Why don't you just use QLabel?



  • You use QLabel and when you want to change the text you emit a signal, connect that signal to QLabel's setText slot and that should do it



  • Is QLabel is designed to update text dynamically?I am looking for the best option for displayed above functionality



  • Please be more specific about dynamically



  • The user can change modes or insert some input data for application,so the application execution changes:some values application calculates changes,some computation modes changes .
    These changes happen during the application execution and I may want to update the above data every several seconds.In the text (I am asking about) I want to report to the user about every such change



  • Well, whenever you want to update the data just emit the signal with the text you want... For example, let's say you have a signal updateStatus(QString). The user inputs something and you want to tell him "Hey, you just did something". (This is all assumed to be in your QTabWidget subclass)

    @
    1st. connect(this, SIGNAL(updateStatus(QString)), tabLabel, SLOT(setText(QString)));

    2nd. emit updateStatus("Hey, you just did something");
    @

    This should change your labels text yo Hey, you just did something.


Log in to reply