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. Deleting row from QTableWidget and from Sqlite database
Forum Updated to NodeBB v4.3 + New Features

Deleting row from QTableWidget and from Sqlite database

Scheduled Pinned Locked Moved Solved General and Desktop
71 Posts 6 Posters 16.3k Views 2 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.
  • Christian EhrlicherC Christian Ehrlicher

    @Risver said in Deleting row from QTableWidget and from Sqlite database:

    Okay and how can i connect it with the button_clicked signal?

    You won't
    When you react on the button clicked signal, get the current selection from the view and delete the selected rows in the model.

    R Offline
    R Offline
    Risver
    wrote on last edited by
    #9

    @Christian-Ehrlicher said in Deleting row from QTableWidget and from Sqlite database:

    @Risver said in Deleting row from QTableWidget and from Sqlite database:

    Okay and how can i connect it with the button_clicked signal?

    You won't
    When you react on the button clicked signal, get the current selection from the view and delete the selected rows in the model.

    Something like this ?

    void MainWindow::on_remove_clicked()
    {
        int selectedRow = ui->tableView->selectionModel()->currentIndex().row();
        
    }
    
    Christian EhrlicherC 1 Reply Last reply
    0
    • R Risver

      @Christian-Ehrlicher said in Deleting row from QTableWidget and from Sqlite database:

      @Risver said in Deleting row from QTableWidget and from Sqlite database:

      Okay and how can i connect it with the button_clicked signal?

      You won't
      When you react on the button clicked signal, get the current selection from the view and delete the selected rows in the model.

      Something like this ?

      void MainWindow::on_remove_clicked()
      {
          int selectedRow = ui->tableView->selectionModel()->currentIndex().row();
          
      }
      
      Christian EhrlicherC Offline
      Christian EhrlicherC Offline
      Christian Ehrlicher
      Lifetime Qt Champion
      wrote on last edited by
      #10

      @Risver Yes.

      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
      Visit the Qt Academy at https://academy.qt.io/catalog

      R 1 Reply Last reply
      0
      • Christian EhrlicherC Christian Ehrlicher

        @Risver Yes.

        R Offline
        R Offline
        Risver
        wrote on last edited by
        #11

        @Christian-Ehrlicher
        Now when i'm trying to implement QSqlTableModel::deleteRowFromTable the debugger says the deleteRowFromTable is a protected member of QSqlTableModel

        jsulmJ 1 Reply Last reply
        0
        • R Risver

          @Christian-Ehrlicher
          Now when i'm trying to implement QSqlTableModel::deleteRowFromTable the debugger says the deleteRowFromTable is a protected member of QSqlTableModel

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on last edited by
          #12

          @Risver https://doc.qt.io/qt-5/qsqltablemodel.html#removeRows

          https://forum.qt.io/topic/113070/qt-code-of-conduct

          R 1 Reply Last reply
          3
          • jsulmJ jsulm

            @Risver https://doc.qt.io/qt-5/qsqltablemodel.html#removeRows

            R Offline
            R Offline
            Risver
            wrote on last edited by
            #13

            @jsulm
            Could you give some example ?

            jsulmJ 1 Reply Last reply
            0
            • R Risver

              @jsulm
              Could you give some example ?

              jsulmJ Offline
              jsulmJ Offline
              jsulm
              Lifetime Qt Champion
              wrote on last edited by
              #14

              @Risver Example?

              model->removeRows(row, 1);
              

              https://forum.qt.io/topic/113070/qt-code-of-conduct

              R 1 Reply Last reply
              1
              • jsulmJ jsulm

                @Risver Example?

                model->removeRows(row, 1);
                
                R Offline
                R Offline
                Risver
                wrote on last edited by
                #15

                @jsulm
                Now i have error - reference to type 'const QModelIndex' could not bind to an rvalue of type 'int'.
                I think i have to refer to QModelIndex but i don't know how. I have a QSqlQueryModel. Should i change it to QAbstractTableModel ?

                jsulmJ 1 Reply Last reply
                0
                • R Risver

                  @jsulm
                  Now i have error - reference to type 'const QModelIndex' could not bind to an rvalue of type 'int'.
                  I think i have to refer to QModelIndex but i don't know how. I have a QSqlQueryModel. Should i change it to QAbstractTableModel ?

                  jsulmJ Offline
                  jsulmJ Offline
                  jsulm
                  Lifetime Qt Champion
                  wrote on last edited by
                  #16

                  @Risver Please show how you're calling removeRows
                  And what Qt version do you use?

                  https://forum.qt.io/topic/113070/qt-code-of-conduct

                  R 1 Reply Last reply
                  1
                  • jsulmJ jsulm

                    @Risver Please show how you're calling removeRows
                    And what Qt version do you use?

                    R Offline
                    R Offline
                    Risver
                    wrote on last edited by
                    #17

                    @jsulm

                    void MainWindow::on_remove_clicked()
                    {
                    
                        if (ui->tableView->selectionModel()->hasSelection())
                        {
                            int addressId = ui->tableView->selectionModel()->currentIndex().row();
                            querymodel->removeRow(addressId, 1);
                            qDebug() << addressId;
                        }
                    }
                    
                    

                    The QT version is 5.0.2

                    jsulmJ M 2 Replies Last reply
                    0
                    • R Risver

                      @jsulm

                      void MainWindow::on_remove_clicked()
                      {
                      
                          if (ui->tableView->selectionModel()->hasSelection())
                          {
                              int addressId = ui->tableView->selectionModel()->currentIndex().row();
                              querymodel->removeRow(addressId, 1);
                              qDebug() << addressId;
                          }
                      }
                      
                      

                      The QT version is 5.0.2

                      jsulmJ Offline
                      jsulmJ Offline
                      jsulm
                      Lifetime Qt Champion
                      wrote on last edited by jsulm
                      #18

                      @Risver said in Deleting row from QTableWidget and from Sqlite database:

                      QT version is 5.0.2

                      Check the documentation for removeRows() in that Qt version.
                      Probably it has a different signature.

                      Is there a reason why you're using such an ancient version?

                      https://forum.qt.io/topic/113070/qt-code-of-conduct

                      R 1 Reply Last reply
                      1
                      • jsulmJ jsulm

                        @Risver said in Deleting row from QTableWidget and from Sqlite database:

                        QT version is 5.0.2

                        Check the documentation for removeRows() in that Qt version.
                        Probably it has a different signature.

                        Is there a reason why you're using such an ancient version?

                        R Offline
                        R Offline
                        Risver
                        wrote on last edited by
                        #19

                        @jsulm said in Deleting row from QTableWidget and from Sqlite database:

                        Is there a reason why you're using such an ancient version?

                        I just installed it a while time ago.

                        JonBJ 1 Reply Last reply
                        0
                        • R Risver

                          @jsulm said in Deleting row from QTableWidget and from Sqlite database:

                          Is there a reason why you're using such an ancient version?

                          I just installed it a while time ago.

                          JonBJ Offline
                          JonBJ Offline
                          JonB
                          wrote on last edited by
                          #20

                          @Risver said in Deleting row from QTableWidget and from Sqlite database:

                          I just installed it a while time ago.

                          Before you spend any more time on this. Qt5 is already up to 5.15, unless you have some deep reason for wanting 5.0 I would uninstall and get such an up-to-date version.

                          R 1 Reply Last reply
                          1
                          • JonBJ JonB

                            @Risver said in Deleting row from QTableWidget and from Sqlite database:

                            I just installed it a while time ago.

                            Before you spend any more time on this. Qt5 is already up to 5.15, unless you have some deep reason for wanting 5.0 I would uninstall and get such an up-to-date version.

                            R Offline
                            R Offline
                            Risver
                            wrote on last edited by
                            #21

                            @JonB
                            I can just upgrade Qt to v6 and see if it works

                            JonBJ 1 Reply Last reply
                            0
                            • R Risver

                              @JonB
                              I can just upgrade Qt to v6 and see if it works

                              JonBJ Offline
                              JonBJ Offline
                              JonB
                              wrote on last edited by
                              #22

                              @Risver
                              You can indeed, though my personal preference would be to take the latest Qt5.x release. I still see too many issues with Qt6, not to mention that I think they still have not ported all modules, depends what bits you will be using.

                              However, my learned colleagues may disagree and advise you to go for Qt6, i don't know....

                              R 1 Reply Last reply
                              1
                              • JonBJ JonB

                                @Risver
                                You can indeed, though my personal preference would be to take the latest Qt5.x release. I still see too many issues with Qt6, not to mention that I think they still have not ported all modules, depends what bits you will be using.

                                However, my learned colleagues may disagree and advise you to go for Qt6, i don't know....

                                R Offline
                                R Offline
                                Risver
                                wrote on last edited by Risver
                                #23

                                @JonB
                                I'm installing Qt 6 for now, i will check if everything works. If it won't i will install Qt 5.15

                                Okay, I configured the project in the new Qt and i still have the same error.

                                jsulmJ 1 Reply Last reply
                                0
                                • R Risver

                                  @JonB
                                  I'm installing Qt 6 for now, i will check if everything works. If it won't i will install Qt 5.15

                                  Okay, I configured the project in the new Qt and i still have the same error.

                                  jsulmJ Offline
                                  jsulmJ Offline
                                  jsulm
                                  Lifetime Qt Champion
                                  wrote on last edited by jsulm
                                  #24

                                  @Risver said in Deleting row from QTableWidget and from Sqlite database:

                                  I configured the project in the new Qt and i still have the same error.

                                  And you are sure you're building with Qt6 now?
                                  And did you do a complete rebuild?

                                  https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  R 1 Reply Last reply
                                  1
                                  • jsulmJ jsulm

                                    @Risver said in Deleting row from QTableWidget and from Sqlite database:

                                    I configured the project in the new Qt and i still have the same error.

                                    And you are sure you're building with Qt6 now?
                                    And did you do a complete rebuild?

                                    R Offline
                                    R Offline
                                    Risver
                                    wrote on last edited by Risver
                                    #25

                                    @jsulm said in Deleting row from QTableWidget and from Sqlite database:

                                    @Risver said in Deleting row from QTableWidget and from Sqlite database:

                                    I configured the project in the new Qt and i still have the same error.

                                    And you are sure you're building with Qt6 now?
                                    And did you do a complete rebuild?

                                    Yes i'm sure i building with Qt6, but i'm not sure how can i complete rebuild the project.
                                    found this. Still have error

                                    1 Reply Last reply
                                    0
                                    • R Risver

                                      @jsulm

                                      void MainWindow::on_remove_clicked()
                                      {
                                      
                                          if (ui->tableView->selectionModel()->hasSelection())
                                          {
                                              int addressId = ui->tableView->selectionModel()->currentIndex().row();
                                              querymodel->removeRow(addressId, 1);
                                              qDebug() << addressId;
                                          }
                                      }
                                      
                                      

                                      The QT version is 5.0.2

                                      M Offline
                                      M Offline
                                      mchinand
                                      wrote on last edited by
                                      #26

                                      @Risver said in Deleting row from QTableWidget and from Sqlite database:

                                      The QT version is 5.0.2

                                      I'm guessing 5.0.2 is/was your QtCreator version (the IDE) not the version of Qt. Look at the 'Kit' you are using, it will say what version of Qt you are using.

                                      c90cabe5-42d8-4ef6-876c-9efebc4c592b-image.png

                                      R 1 Reply Last reply
                                      0
                                      • Christian EhrlicherC Offline
                                        Christian EhrlicherC Offline
                                        Christian Ehrlicher
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #27

                                        querymodel->removeRow(addressId, 1);

                                        model->removeRows(row, 1);

                                        removeRow() != removeRows()

                                        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                                        Visit the Qt Academy at https://academy.qt.io/catalog

                                        R 1 Reply Last reply
                                        1
                                        • M mchinand

                                          @Risver said in Deleting row from QTableWidget and from Sqlite database:

                                          The QT version is 5.0.2

                                          I'm guessing 5.0.2 is/was your QtCreator version (the IDE) not the version of Qt. Look at the 'Kit' you are using, it will say what version of Qt you are using.

                                          c90cabe5-42d8-4ef6-876c-9efebc4c592b-image.png

                                          R Offline
                                          R Offline
                                          Risver
                                          wrote on last edited by
                                          #28

                                          @mchinand
                                          Yes you're right.

                                          JonBJ 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