Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How to call an object created in another function.
Forum Updated to NodeBB v4.3 + New Features

How to call an object created in another function.

Scheduled Pinned Locked Moved Solved General and Desktop
c++function
17 Posts 2 Posters 5.9k 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.
  • ronyNSR ronyNS

    Yes , like i want to cover my login form , but when i drag the label on the ui it resizes according to the layout.
    I used size policy , but when i run it , the main window size is fixed and cannot be reduced.
    If there is an easy way , please tell me :)

    mrjjM Offline
    mrjjM Offline
    mrjj
    Lifetime Qt Champion
    wrote on last edited by
    #8

    @ronyNS
    ok, sounds like i dont understand the full setup then.
    Maybe resize event will just be easier :)

    1 Reply Last reply
    2
    • ronyNSR Offline
      ronyNSR Offline
      ronyNS
      wrote on last edited by
      #9

      Yes , Thank you ! :)

      1 Reply Last reply
      1
      • ronyNSR Offline
        ronyNSR Offline
        ronyNS
        wrote on last edited by
        #10

        Hey now i am getting 'Expected specifier before Qlabel' error . Please help

        mrjjM 1 Reply Last reply
        0
        • ronyNSR ronyNS

          Hey now i am getting 'Expected specifier before Qlabel' error . Please help

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by mrjj
          #11

          @ronyNS said:

          Expected

          show line where it says it :)

          did u include <QLabel>
          in mainwindow. h?

          if its for the line
          QLabel *lbl1;

          1 Reply Last reply
          0
          • ronyNSR Offline
            ronyNSR Offline
            ronyNS
            wrote on last edited by
            #12
            void createlbl(){
            lbl1 = new QLabel("Hello");
            }
            

            Error is for this line only when i use lbl1 in other functions. Yes i have included Qlabel in .h file

            mrjjM 1 Reply Last reply
            0
            • ronyNSR ronyNS
              void createlbl(){
              lbl1 = new QLabel("Hello");
              }
              

              Error is for this line only when i use lbl1 in other functions. Yes i have included Qlabel in .h file

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by mrjj
              #13

              @ronyNS
              well u are not in mainwindow method..

              void XXXX::createlbl(){

              XXXX should be mainwindow

              when there is no NAME:: in front, its NOT a member function. just a plain function.

              ronyNSR 1 Reply Last reply
              0
              • mrjjM mrjj

                @ronyNS
                well u are not in mainwindow method..

                void XXXX::createlbl(){

                XXXX should be mainwindow

                when there is no NAME:: in front, its NOT a member function. just a plain function.

                ronyNSR Offline
                ronyNSR Offline
                ronyNS
                wrote on last edited by
                #14

                @mrjj
                Still the same error

                void MainWindow:: createlbl(){
                    lbl1 = new Qlabel();
                }
                

                'expected type-specifier before QLabel

                mrjjM 1 Reply Last reply
                0
                • ronyNSR ronyNS

                  @mrjj
                  Still the same error

                  void MainWindow:: createlbl(){
                      lbl1 = new Qlabel();
                  }
                  

                  'expected type-specifier before QLabel

                  mrjjM Offline
                  mrjjM Offline
                  mrjj
                  Lifetime Qt Champion
                  wrote on last edited by mrjj
                  #15

                  but it should work. ?

                  show mainwindow.h

                  here is sample that does so
                  https://www.dropbox.com/s/i0qj2e9mxbggymt/mylabel.zip?dl=0

                  1 Reply Last reply
                  2
                  • ronyNSR Offline
                    ronyNSR Offline
                    ronyNS
                    wrote on last edited by
                    #16

                    my mainwindow.h

                    #ifndef MAINWINDOW_H
                    #define MAINWINDOW_H
                    #include<QLabel>
                    #include <QMainWindow>
                    
                    namespace Ui {
                    class MainWindow;
                    }
                    
                    class MainWindow : public QMainWindow
                    {
                        Q_OBJECT
                    
                    public:
                        explicit MainWindow(QWidget *parent = 0);
                        ~MainWindow();
                        QLabel *lbl;
                    
                    protected:
                        void resizeEvent(QResizeEvent *evt) override;
                    
                    private:
                        Ui::MainWindow *ui;
                    };
                    
                    #endif // MAINWINDOW_H
                    

                    my mainwindow.cpp

                    #include "mainwindow.h"
                    #include "ui_mainwindow.h"
                    #include<QLabel>
                    
                    MainWindow::MainWindow(QWidget *parent) :
                        QMainWindow(parent),
                        ui(new Ui::MainWindow)
                    {
                        ui->setupUi(this);
                    }
                    
                    void MainWindow:: createlbl(){
                        lbl = new Qlabel();
                    }
                    
                    void MainWindow :: resizeEvent(QResizeEvent *evt)
                    {
                        MainWindow::setCentralWidget(lbl);
                        lbl->setStyleSheet("Background-color:pink");
                    
                        QMainWindow::resizeEvent(evt); //call base implementation
                    }
                    
                    MainWindow::~MainWindow()
                    {
                        delete ui;
                    }
                    
                    
                    
                    1 Reply Last reply
                    0
                    • mrjjM Offline
                      mrjjM Offline
                      mrjj
                      Lifetime Qt Champion
                      wrote on last edited by
                      #17

                      @ronyNS said:

                      lbl = new Qlabel();

                      misspelled ?
                      its QLabel ?

                      lbl = new QLabel();
                      big L ?

                      1 Reply Last reply
                      2

                      • Login

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