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 click the qlabel to perform some action....
QtWS25 Last Chance

how to click the qlabel to perform some action....

Scheduled Pinned Locked Moved Solved General and Desktop
12 Posts 6 Posters 6.2k Views
  • 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.
  • K Offline
    K Offline
    karti gesar
    wrote on last edited by
    #1
    • list item
    1 Reply Last reply
    0
    • ? Offline
      ? Offline
      A Former User
      wrote on last edited by
      #2

      Hi! See this wiki article: Clickable QLabel.

      the_T K 3 Replies Last reply
      7
      • ? A Former User

        Hi! See this wiki article: Clickable QLabel.

        the_T Offline
        the_T Offline
        the_
        wrote on last edited by
        #3

        Another solution could be using event filter

        //MyClass.h
        QLabel *clickablelabel
        
        //MyClass.cpp
        MyClass::MyClass(QObject *parent) {
        //...
        clickablelabel = new QLabel("Click Me!");
        
        clickablelabel->installEventFilter(this);
        //...
        }
        bool MyClass::eventFilter(QObject *o, QEvent *e) {
        
        if(o == clickablelabel && e->type() == QMouseEvent::MouseButtonPress) {
        //do something
        }
        /* //using metaObject() thingies 
        if(e->type() == QMouseEvent::MouseButtonPress && o->metaObject()->className() == (new QLabel)->metaObject()->className()) {
        //do something
        }
        */
        return QObject::eventFilter(o,e);
        }
        

        -- No support in PM --

        1 Reply Last reply
        4
        • Chris KawaC Online
          Chris KawaC Online
          Chris Kawa
          Lifetime Qt Champion
          wrote on last edited by
          #4

          Two other options:

          If it's clickable why not use a button? You can make it flat if you don't want the usual button bevel.

          You can put an html link in the label and it will emit a linkActivated signal when you click on it.

          1 Reply Last reply
          5
          • mrjjM Offline
            mrjjM Offline
            mrjj
            Lifetime Qt Champion
            wrote on last edited by
            #5

            so 3 super answers to the cool description:

            list item

            :)

            1 Reply Last reply
            5
            • ? A Former User

              Hi! See this wiki article: Clickable QLabel.

              K Offline
              K Offline
              karti gesar
              wrote on last edited by
              #6

              MainWindow::MainWindow(QWidget *parent) :
              QMainWindow(parent),
              ui(new Ui::MainWindow)
              {
              ui->setupUi(this);
              QLabel *dispimg= new QLabel(this);
              dispimg->setStyleSheet("image:url(E:/may/may_7/images/singdisp.png);");
              dispimg->setGeometry(330,190,200,200);
              connect(this, SIGNAL( clicked() ), this, SLOT( slotClicked() ) );

              }

              MainWindow::~MainWindow()
              {
              delete ui;
              }
              void MainWindow::mousePressEvent ( QMouseEvent * event )
              {
              emit clicked();
              }

              void MainWindow::slotClicked()
              {
              qDebug()<<"hello";
              }

              above code is what i used...

              1 Reply Last reply
              0
              • K Offline
                K Offline
                karti gesar
                wrote on last edited by
                #7

                it work's all area of the mouse pressed....i want to click the particular label

                1 Reply Last reply
                0
                • jsulmJ Offline
                  jsulmJ Offline
                  jsulm
                  Lifetime Qt Champion
                  wrote on last edited by
                  #8

                  Please read the answers above, there is even code you can use.

                  1 Reply Last reply
                  1
                  • ? A Former User

                    Hi! See this wiki article: Clickable QLabel.

                    K Offline
                    K Offline
                    karti gesar
                    wrote on last edited by
                    #9

                    @Wieland i want to click for the particular label....

                    1 Reply Last reply
                    0
                    • K Offline
                      K Offline
                      karti gesar
                      wrote on last edited by
                      #10

                      can any one send the coding ..for above question

                      1 Reply Last reply
                      0
                      • K Offline
                        K Offline
                        karti gesar
                        wrote on last edited by
                        #11

                        thanks for all..i got it....

                        1 Reply Last reply
                        0
                        • jsulmJ Offline
                          jsulmJ Offline
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #12
                          This post is deleted!
                          1 Reply Last reply
                          0

                          • Login

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