Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. How to setBottomWidget insteads of setCentralWidget? and color? (solved)
Forum Updated to NodeBB v4.3 + New Features

How to setBottomWidget insteads of setCentralWidget? and color? (solved)

Scheduled Pinned Locked Moved Mobile and Embedded
26 Posts 3 Posters 7.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • I Offline
    I Offline
    IamSumit
    wrote on 31 Oct 2014, 04:20 last edited by
    #3

    Hi..

    How to create banner at the bottom of my MainWindow?
    you can set your banner on Status Bar of QMainWindow.
    or even you can take QWidget and set using setgeometry() function/method of that Widget.
    how to set the widget to red color?
    "find here":http://qt-project.org/wiki/How_to_Change_the_Background_Color_of_QWidget
    Is it possible to write the text on a text label?
    yes it is possible.

    hope this helps.

    Be Cute

    1 Reply Last reply
    0
    • H Offline
      H Offline
      houmingc
      wrote on 31 Oct 2014, 05:02 last edited by
      #4

      can you write out the code that enable text on Qlabel

      1 Reply Last reply
      0
      • S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 31 Oct 2014, 07:55 last edited by
        #5

        Do you mean "setText":http://qt-project.org/doc/qt-5/qlabel.html#text-prop ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        0
        • H Offline
          H Offline
          houmingc
          wrote on 31 Oct 2014, 09:57 last edited by
          #6

          i need a scrolling text.
          I achieve by pTicker->setText(” hello “);

          How to put pTicker onto a textlabel?

          1 Reply Last reply
          0
          • S Offline
            S Offline
            SGaist
            Lifetime Qt Champion
            wrote on 1 Nov 2014, 00:23 last edited by
            #7

            Ok, you don't need a QLabel, just put your pTicker directly at the right place

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • H Offline
              H Offline
              houmingc
              wrote on 1 Nov 2014, 14:28 last edited by
              #8

              How to put pTicker at the right place?
              i putting it using QMainWindow::setcentralWidget(pTicker);

              I tried QToolbar *fontToolBar= new QToolBar(tr("Font");
              fontToolBar->setObjectName("FontToolBar");
              fontToolBar->addWidget(pTicker);
              not successful.

              I tried QLabel *bannerLabel=new QLabel(pTicker);
              bannerLabel->setAlignment(Qt::AlignVCenter);
              It works, but no matter setting AlignHCenter or AlignBaseline or other alignment, it is fixes to the top left.

              Thanks for the good deeds, promise to pass it around.

              1 Reply Last reply
              0
              • S Offline
                S Offline
                SGaist
                Lifetime Qt Champion
                wrote on 1 Nov 2014, 21:12 last edited by
                #9

                [quote author="houmingc" date="1414852099"]
                I tried
                @QToolbar *fontToolBar= new QToolBar(tr("Font");
                fontToolBar->setObjectName("FontToolBar");
                fontToolBar->addWidget(pTicker);
                @
                not successful.
                [/quote]
                What do you mean by not successful ?

                [quote author="houmingc" date="1414852099"]
                I tried
                @
                QLabel *bannerLabel=new QLabel(pTicker);
                bannerLabel->setAlignment(Qt::AlignVCenter);
                @
                It works, but no matter setting AlignHCenter or AlignBaseline or other alignment, it is fixes to the top left.
                [/quote]

                That's normal, you are telling QLabel to align it's content that way. However bannerLabel doesn't have any content. You just made it a child of pTicker.

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • H Offline
                  H Offline
                  houmingc
                  wrote on 1 Nov 2014, 21:25 last edited by
                  #10

                  How to set it to scroll at the bottom of the dialog box

                  1 Reply Last reply
                  0
                  • H Offline
                    H Offline
                    houmingc
                    wrote on 2 Nov 2014, 14:51 last edited by
                    #11

                    i need the code urgently, please help.

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      SGaist
                      Lifetime Qt Champion
                      wrote on 2 Nov 2014, 22:59 last edited by
                      #12

                      At the bottom of a QDialog ? You can use a QVBoxLayout

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 Reply Last reply
                      0
                      • H Offline
                        H Offline
                        houmingc
                        wrote on 3 Nov 2014, 12:36 last edited by
                        #13

                        how to create multiple instances of this ticker

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          SGaist
                          Lifetime Qt Champion
                          wrote on 3 Nov 2014, 22:00 last edited by
                          #14

                          The same way you create multiple instances of any other classes in C++

                          Interested in AI ? www.idiap.ch
                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • H Offline
                            H Offline
                            houmingc
                            wrote on 6 Nov 2014, 01:20 last edited by
                            #15

                            My objective is to get a scrolling text below the Main Window dialog box. Below is my code, implementing QVBoxLayout, nothing is change, please give some more advice. Thanks

                            Ticker* pTicker = new Ticker(this);
                            pTicker->setText("  I love u but u love me not     ");
                            QMainWindow::setCentralWidget(pTicker);
                            QVBoxLayout *vbox=new QVBoxLayout(this);
                            vbox->addWidget(pTicker);
                            
                            QPalette pal=palette();
                            pal.setColor(QPalette::Background,Qt::green);
                            setPalette(pal);
                            setAutoFillBackground(true);
                            
                            1 Reply Last reply
                            0
                            • H Offline
                              H Offline
                              houmingc
                              wrote on 6 Nov 2014, 02:10 last edited by
                              #16

                              My objective is to get a scrolling text below the Main Window dialog box. Below is my code, implementing QVBoxLayout, nothing is change, please give some more advice. Thanks

                              Ticker* pTicker = new Ticker(this);
                              
                              pTicker->setText("  I love u but u love me not     ");
                              
                              QMainWindow::setCentralWidget(pTicker);
                              
                              QVBoxLayout *vbox=new QVBoxLayout(this);
                              
                              vbox->addWidget(pTicker);
                              
                              QPalette pal=palette();
                              
                              pal.setColor(QPalette::Background,Qt::green);
                              
                              setPalette(pal);
                              
                              setAutoFillBackground(true);
                              
                              1 Reply Last reply
                              0
                              • I Offline
                                I Offline
                                IamSumit
                                wrote on 6 Nov 2014, 04:10 last edited by
                                #17

                                Hii.

                                You can take some referance from the following link for scrolling the text.
                                "here":http://stackoverflow.com/questions/12159443/qt-scrolling-the-text-in-qwidget

                                Be Cute

                                1 Reply Last reply
                                0
                                • H Offline
                                  H Offline
                                  houmingc
                                  wrote on 8 Nov 2014, 15:34 last edited by
                                  #18

                                  I added cpp and header file to my added class.
                                  Compile successfully, created the object successfully
                                  When i build and run the program, other than the mainwindow, no text appear and scrolling.

                                  I went into below site. there is a zip file but i can't download, i have feedback to the administrator for months and there isn't any progress. Please help. Did i miss anything. it seems i am getting near to the answer.
                                  http://www.qtcentre.org/threads/24712-Marquee-QLabel

                                  1 Reply Last reply
                                  0
                                  • S Offline
                                    S Offline
                                    SGaist
                                    Lifetime Qt Champion
                                    wrote on 8 Nov 2014, 21:29 last edited by
                                    #19

                                    [quote author="houmingc" date="1415239854"]My objective is to get a scrolling text below the Main Window dialog box. Below is my code, implementing QVBoxLayout, nothing is change, please give some more advice. Thanks
                                    @
                                    Ticker* pTicker = new Ticker(this);

                                    pTicker->setText("  I love u but u love me not     ");
                                    
                                    QMainWindow::setCentralWidget(pTicker);
                                    
                                    QVBoxLayout *vbox=new QVBoxLayout(this);
                                    
                                    vbox->addWidget(pTicker);
                                    
                                    QPalette pal=palette();
                                    
                                    pal.setColor(QPalette::Background,Qt::green);
                                    
                                    setPalette(pal);
                                    
                                    setAutoFillBackground(true);
                                    

                                    @
                                    [/quote]

                                    You are setting pTicker as central widget, then you are setting a QVBoxLayout on your MainWindow which will fail since QMainWindow already has a layout.

                                    So all in all, if you want your pTicker at the bottom in your QMainWindow centralWidget, then put in on the bottom of a widget that you will set as central widget.

                                    Interested in AI ? www.idiap.ch
                                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                    1 Reply Last reply
                                    0
                                    • H Offline
                                      H Offline
                                      houmingc
                                      wrote on 10 Nov 2014, 06:06 last edited by
                                      #20

                                      Dear sir, i commented out setCentrealWidget, still not working.

                                      QLayout: Attempting to add QLayout "" to MainWindow "MainWindow", which already has a layout
                                      QWidget::setLayout: Attempting to set QLayout "" on MainWindow "MainWindow", which already has a layout

                                      Ticker* pTicker = new Ticker(this);
                                      pTicker->setText("  I love u but u love me not     ");
                                      QLineEdit *lineEdit =new QLineEdit;
                                      //QMainWindow::setCentralWidget(pTicker);
                                      QVBoxLayout *vbox=new QVBoxLayout(this);
                                      vbox->addWidget(lineEdit);
                                      vbox->addWidget(pTicker);
                                      setLayout(vbox);
                                      
                                      1 Reply Last reply
                                      0
                                      • H Offline
                                        H Offline
                                        houmingc
                                        wrote on 10 Nov 2014, 06:44 last edited by
                                        #21

                                        Is there other container that i can use other than QVBoxLayout.
                                        what does showEvent and hideEvent do exactly in ticker.cpp?

                                        can give more guidance for this problem?

                                        1 Reply Last reply
                                        0
                                        • S Offline
                                          S Offline
                                          SGaist
                                          Lifetime Qt Champion
                                          wrote on 10 Nov 2014, 23:58 last edited by
                                          #22

                                          To work with QMainWindow's central widget you have to create a container widget and work on it. I already wrote that setting a layout on a QMainWindow will fail since it already has one.

                                          @
                                          QWidget *containerWidget = new QWidget;
                                          QVBoxLayout *layout = new QVBoxLayout(containerWidget);
                                          layout->addStretch(1);
                                          layout->addWidget(pTicker);
                                          setCentralWidget(containerWidget);
                                          @

                                          "QMainWindow":http://qt-project.org/doc/qt-5/qmainwindow.html#qt-main-window-framework

                                          Interested in AI ? www.idiap.ch
                                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                          1 Reply Last reply
                                          0

                                          12/26

                                          2 Nov 2014, 22:59

                                          • Login

                                          • Login or register to search.
                                          12 out of 26
                                          • First post
                                            12/26
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved