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. Vertical ScrollBar of QTableWidget not moving as expected
Forum Updated to NodeBB v4.3 + New Features

Vertical ScrollBar of QTableWidget not moving as expected

Scheduled Pinned Locked Moved Solved General and Desktop
15 Posts 4 Posters 2.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.
  • S Offline
    S Offline
    SGaist
    Lifetime Qt Champion
    wrote on 20 Nov 2019, 21:20 last edited by
    #4

    Show your complete code, otherwise we can only do speculations.

    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
    • S Offline
      S Offline
      Sajeevan K
      wrote on 21 Nov 2019, 05:04 last edited by
      #5

      Hi SGaist,

      Thank You for the reply and supporting.

      The full code is given below.

      form_Table() shall be executed in a while loop and Key_Up_Routine and Key_Down_Routine whenever keys are pressed.

      form_Table {

          QTableWidgetItem * Display_item_0_0 = new QTableWidgetItem("0");
          QTableWidgetItem * Display_item_0_1 = new QTableWidgetItem("1");
          QTableWidgetItem * Display_item_0_2 = new QTableWidgetItem("2");
          QTableWidgetItem * Display_item_0_3 = new QTableWidgetItem("3");
          QTableWidgetItem * Display_item_0_4 = new QTableWidgetItem("4");
          QTableWidgetItem * Display_item_0_5 = new QTableWidgetItem("5");
          QTableWidgetItem * Display_item_0_6 = new QTableWidgetItem("6");
          QTableWidgetItem * Display_item_0_7 = new QTableWidgetItem("7");
          QTableWidgetItem * Display_item_0_8 = new QTableWidgetItem("8");
          QTableWidgetItem * Display_item_513_0 = new QTableWidgetItem("0");
          QTableWidgetItem * Display_item_513_1 = new QTableWidgetItem("1");
          QTableWidgetItem * Display_item_513_2 = new QTableWidgetItem("2");
          QTableWidgetItem * Display_item_513_3 = new QTableWidgetItem("3");
          QTableWidgetItem * Display_item_513_4 = new QTableWidgetItem("4");
          QTableWidgetItem * Display_item_513_5 = new QTableWidgetItem("5");
          QTableWidgetItem * Display_item_513_6 = new QTableWidgetItem("6");
          QTableWidgetItem * Display_item_513_7 = new QTableWidgetItem("7");
          QTableWidgetItem * Display_item_513_8 = new QtableWidgetItem("8");
      

      .........
      .........
      .........

                  QTableWidgetItem * Display_item_513_0 = new QTableWidgetItem("0");
          QTableWidgetItem * Display_item_513_1 = new QTableWidgetItem("1");
          QTableWidgetItem * Display_item_513_2 = new QTableWidgetItem("2");
          QTableWidgetItem * Display_item_513_3 = new QTableWidgetItem("3");
          QTableWidgetItem * Display_item_513_4 = new QTableWidgetItem("4");
          QTableWidgetItem * Display_item_513_5 = new QTableWidgetItem("5");
          QTableWidgetItem * Display_item_513_6 = new QTableWidgetItem("6");
          QTableWidgetItem * Display_item_513_7 = new QTableWidgetItem("7");
          QTableWidgetItem * Display_item_513_8 = new QtableWidgetItem("8");
      
      
          ui->tableWidget->setGeometry(-2,40,804,15424);
          ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
          ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
      
          ui->tableWidget->setRowCount(514);
          ui->tableWidget->setColumnCount(9);
      
      
          ui->tableWidget->setColumnWidth(0,80);
          ui->tableWidget->setColumnWidth(1,80);
          ui->tableWidget->setColumnWidth(2,80);
          ui->tableWidget->setColumnWidth(3,80);
          ui->tableWidget->setColumnWidth(4,80);
          ui->tableWidget->setColumnWidth(5,80);
          ui->tableWidget->setColumnWidth(6,80);
          ui->tableWidget->setColumnWidth(7,80);
          ui->tableWidget->setColumnWidth(8,80);
      
      
      
          QStringList horz_header;
          horz_header.clear();
          horz_header.append(“T1”);
          horz_header.append(“T2”);
          horz_header.append(“T3”);
          horz_header.append(“T4”);
          horz_header.append(“T5”);
          horz_header.append(“T6”);
          horz_header.append(“T7”);
          horz_header.append(“T8”);
          horz_header.append(“T9”);
          ui->tableWidget->setHorizontalHeaderLabels(horz_header);
      
          QStringList vert_header;
          vert_header.clear();
          vert_header.append("P1");
          vert_header.append("P2");
          vert_header.append("P3");
          vert_header.append("P4");
      
          ui->tableWidget->setVerticalHeaderLabels(vert_header);
          ui->tableWidget->horizontalHeader()->setVisible(true);
          ui->tableWidget->verticalHeader()->setVisible(true);
          ui->tableWidget-setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
          ui->tableWidget->setAutoScroll(false);
      
      
          ui->tableWidget->setItem(0,0,Display_item_0_0);
          ui->tableWidget->setItem(0,1,Display_item_0_1);
          ui->tableWidget->setItem(0,2,Display_item_0_2);
          ui->tableWidget->setItem(0,3,Display_item_0_3);
          ui->tableWidget->setItem(0,4,Display_item_0_4);
          ui->tableWidget->setItem(0,5,Display_item_0_5);
          ui->tableWidget->setItem(0,6,Display_item_0_6);
          ui->tableWidget->setItem(0,7,Display_item_0_7);
          ui->tableWidget->setItem(0,8,Display_item_0_8);
          ui->tableWidget->setItem(1,0,Display_item_1_0);
          ui->tableWidget->setItem(1,1,Display_item_1_1);
          ui->tableWidget->setItem(1,2,Display_item_1_2);
          ui->tableWidget->setItem(1,3,Display_item_1_3);
          ui->tableWidget->setItem(1,4,Display_item_1_4);
          ui->tableWidget->setItem(1,5,Display_item_1_5);
          ui->tableWidget->setItem(1,6,Display_item_1_6);
          ui->tableWidget->setItem(1,7,Display_item_1_7);
          ui->tableWidget->setItem(1,8,Display_item_1_8);
      

      .........
      .........
      ..........

      ui->tableWidget_FDP->setItem(513,0,FDP_Display_item_513_0);
      ui->tableWidget_FDP->setItem(513,1,FDP_Display_item_513_1);
      ui->tableWidget_FDP->setItem(513,2,FDP_Display_item_513_2);
      ui->tableWidget_FDP->setItem(513,3,FDP_Display_item_513_3);
      ui->tableWidget_FDP->setItem(513,4,FDP_Display_item_513_4);
      ui->tableWidget_FDP->setItem(513,5,FDP_Display_item_513_5);
      ui->tableWidget_FDP->setItem(513,6,FDP_Display_item_513_6);
      ui->tableWidget_FDP->setItem(513,7,FDP_Display_item_513_7);
      ui->tableWidget_FDP->setItem(513,8,FDP_Display_item_513_8);

      ui->tableWidget_FDP->setSelectionBehavior(QAbstractItemView::SelectItems);
      ui->tableWidget_FDP->setSelectionMode(QAbstractItemView::SingleSelection);
      ui->tableWidget_FDP->setShowGrid(true);
      ui->tableWidget_FDP->horizontalHeader()->setSectionsMovable(true);
      ui->tableWidget_FDP->horizontalHeader()->setSectionsClickable(true);
      ui->tableWidget_FDP->horizontalHeader()->etSectionResizeMode(QHeaderView::Fixed);

      }

      Key_Up_Routine {

      int scroll;

      qDebug("current value = %d ", ui->tableWidget_FDP->verticalScrollBar()->value());
      scroll = ui->tableWidget_FDP->verticalScrollBar()->value();
      if(scroll >= 10) {
          ui->tableWidget_FDP->verticalScrollBar()->setValue((scroll - 10));
      }
      qDebug("new value = %d ", ui->tableWidget_FDP->verticalScrollBar()->value());
      

      }

      Key_Down_Routine {
      int scroll;

      qDebug("current value = %d ", ui->tableWidget_FDP->verticalScrollBar()->value());
      

      scroll = ui->tableWidget_FDP->verticalScrollBar()->value();
      ui->tableWidget_FDP->verticalScrollBar()->setValue((scroll + 10));
      qDebug("new value = %d ", ui->tableWidget_FDP->verticalScrollBar()->value());

      }

      1 Reply Last reply
      0
      • S Offline
        S Offline
        Sajeevan K
        wrote on 21 Nov 2019, 05:14 last edited by
        #6

        Hi,

        Some mistakes in previous mail. Please ignore that. The code sample I am using is as given below.

        form_Table {

            QTableWidgetItem * Display_item_0_0 = new QTableWidgetItem("0");
            QTableWidgetItem * Display_item_0_1 = new QTableWidgetItem("1");
            QTableWidgetItem * Display_item_0_2 = new QTableWidgetItem("2");
            QTableWidgetItem * Display_item_0_3 = new QTableWidgetItem("3");
            QTableWidgetItem * Display_item_0_4 = new QTableWidgetItem("4");
            QTableWidgetItem * Display_item_0_5 = new QTableWidgetItem("5");
            QTableWidgetItem * Display_item_0_6 = new QTableWidgetItem("6");
            QTableWidgetItem * Display_item_0_7 = new QTableWidgetItem("7");
            QTableWidgetItem * Display_item_0_8 = new QTableWidgetItem("8");
            QTableWidgetItem * Display_item_1_0 = new QTableWidgetItem("0");
            QTableWidgetItem * Display_item_1_1 = new QTableWidgetItem("1");
            QTableWidgetItem * Display_item_1_2 = new QTableWidgetItem("2");
            QTableWidgetItem * Display_item_1_3 = new QTableWidgetItem("3");
            QTableWidgetItem * Display_item_1_4 = new QTableWidgetItem("4");
            QTableWidgetItem * Display_item_1_5 = new QTableWidgetItem("5");
            QTableWidgetItem * Display_item_1_6 = new QTableWidgetItem("6");
            QTableWidgetItem * Display_item_1_7 = new QTableWidgetItem("7");
            QTableWidgetItem * Display_item_1_8 = new QtableWidgetItem("8");
        

        .........
        .........
        .........

                    QTableWidgetItem * Display_item_513_0 = new QTableWidgetItem("0");
            QTableWidgetItem * Display_item_513_1 = new QTableWidgetItem("1");
            QTableWidgetItem * Display_item_513_2 = new QTableWidgetItem("2");
            QTableWidgetItem * Display_item_513_3 = new QTableWidgetItem("3");
            QTableWidgetItem * Display_item_513_4 = new QTableWidgetItem("4");
            QTableWidgetItem * Display_item_513_5 = new QTableWidgetItem("5");
            QTableWidgetItem * Display_item_513_6 = new QTableWidgetItem("6");
            QTableWidgetItem * Display_item_513_7 = new QTableWidgetItem("7");
            QTableWidgetItem * Display_item_513_8 = new QtableWidgetItem("8");
        
        
            ui->tableWidget->setGeometry(-2,40,804,15424);
            ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
            ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
        
            ui->tableWidget->setRowCount(514);
            ui->tableWidget->setColumnCount(9);
        
        
            ui->tableWidget->setColumnWidth(0,80);
            ui->tableWidget->setColumnWidth(1,80);
            ui->tableWidget->setColumnWidth(2,80);
            ui->tableWidget->setColumnWidth(3,80);
            ui->tableWidget->setColumnWidth(4,80);
            ui->tableWidget->setColumnWidth(5,80);
            ui->tableWidget->setColumnWidth(6,80);
            ui->tableWidget->setColumnWidth(7,80);
            ui->tableWidget->setColumnWidth(8,80);
        
        
        
            QStringList horz_header;
            horz_header.clear();
            horz_header.append(“T1”);
            horz_header.append(“T2”);
            horz_header.append(“T3”);
            horz_header.append(“T4”);
            horz_header.append(“T5”);
            horz_header.append(“T6”);
            horz_header.append(“T7”);
            horz_header.append(“T8”);
            horz_header.append(“T9”);
            ui->tableWidget->setHorizontalHeaderLabels(horz_header);
        
            QStringList vert_header;
            vert_header.clear();
            vert_header.append("P1");
            vert_header.append("P2");
            vert_header.append("P3");
            vert_header.append("P4");
        
            ui->tableWidget->setVerticalHeaderLabels(vert_header);
            ui->tableWidget->horizontalHeader()->setVisible(true);
            ui->tableWidget->verticalHeader()->setVisible(true);
            ui->tableWidget-setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
            ui->tableWidget->setAutoScroll(false);
        
        
            ui->tableWidget->setItem(0,0,Display_item_0_0);
            ui->tableWidget->setItem(0,1,Display_item_0_1);
            ui->tableWidget->setItem(0,2,Display_item_0_2);
            ui->tableWidget->setItem(0,3,Display_item_0_3);
            ui->tableWidget->setItem(0,4,Display_item_0_4);
            ui->tableWidget->setItem(0,5,Display_item_0_5);
            ui->tableWidget->setItem(0,6,Display_item_0_6);
            ui->tableWidget->setItem(0,7,Display_item_0_7);
            ui->tableWidget->setItem(0,8,Display_item_0_8);
            ui->tableWidget->setItem(1,0,Display_item_1_0);
            ui->tableWidget->setItem(1,1,Display_item_1_1);
            ui->tableWidget->setItem(1,2,Display_item_1_2);
            ui->tableWidget->setItem(1,3,Display_item_1_3);
            ui->tableWidget->setItem(1,4,Display_item_1_4);
            ui->tableWidget->setItem(1,5,Display_item_1_5);
            ui->tableWidget->setItem(1,6,Display_item_1_6);
            ui->tableWidget->setItem(1,7,Display_item_1_7);
            ui->tableWidget->setItem(1,8,Display_item_1_8);
        

        .........
        .........
        ..........

        ui->tableWidget->setItem(513,0,FDP_Display_item_513_0);
        ui->tableWidget->setItem(513,1,FDP_Display_item_513_1);
        ui->tableWidget->setItem(513,2,FDP_Display_item_513_2);
        ui->tableWidget->setItem(513,3,FDP_Display_item_513_3);
        ui->tableWidget->setItem(513,4,FDP_Display_item_513_4);
        ui->tableWidget->setItem(513,5,FDP_Display_item_513_5);
        ui->tableWidget->setItem(513,6,FDP_Display_item_513_6);
        ui->tableWidget->setItem(513,7,FDP_Display_item_513_7);
        ui->tableWidget->setItem(513,8,FDP_Display_item_513_8);

        ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);
        ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
        ui->tableWidget->setShowGrid(true);
        ui->tableWidget->horizontalHeader()->setSectionsMovable(true);
        ui->tableWidget->horizontalHeader()->setSectionsClickable(true);
        ui->tableWidget->horizontalHeader()->etSectionResizeMode(QHeaderView::Fixed);

        }

        Key_Up_Routine {

        int scroll;

        qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
        scroll = ui->tableWidget->verticalScrollBar()->value();
        if(scroll >= 10) {
            ui->tableWidget->verticalScrollBar()->setValue((scroll - 10));
        }
        qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());
        

        }

        Key_Down_Routine {
        int scroll;

        qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
        

        scroll = ui->tableWidget->verticalScrollBar()->value();
        ui->tableWidget->verticalScrollBar()->setValue((scroll + 10));
        qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());

        }

        jsulmJ 1 Reply Last reply 21 Nov 2019, 05:20
        0
        • S Sajeevan K
          21 Nov 2019, 05:14

          Hi,

          Some mistakes in previous mail. Please ignore that. The code sample I am using is as given below.

          form_Table {

              QTableWidgetItem * Display_item_0_0 = new QTableWidgetItem("0");
              QTableWidgetItem * Display_item_0_1 = new QTableWidgetItem("1");
              QTableWidgetItem * Display_item_0_2 = new QTableWidgetItem("2");
              QTableWidgetItem * Display_item_0_3 = new QTableWidgetItem("3");
              QTableWidgetItem * Display_item_0_4 = new QTableWidgetItem("4");
              QTableWidgetItem * Display_item_0_5 = new QTableWidgetItem("5");
              QTableWidgetItem * Display_item_0_6 = new QTableWidgetItem("6");
              QTableWidgetItem * Display_item_0_7 = new QTableWidgetItem("7");
              QTableWidgetItem * Display_item_0_8 = new QTableWidgetItem("8");
              QTableWidgetItem * Display_item_1_0 = new QTableWidgetItem("0");
              QTableWidgetItem * Display_item_1_1 = new QTableWidgetItem("1");
              QTableWidgetItem * Display_item_1_2 = new QTableWidgetItem("2");
              QTableWidgetItem * Display_item_1_3 = new QTableWidgetItem("3");
              QTableWidgetItem * Display_item_1_4 = new QTableWidgetItem("4");
              QTableWidgetItem * Display_item_1_5 = new QTableWidgetItem("5");
              QTableWidgetItem * Display_item_1_6 = new QTableWidgetItem("6");
              QTableWidgetItem * Display_item_1_7 = new QTableWidgetItem("7");
              QTableWidgetItem * Display_item_1_8 = new QtableWidgetItem("8");
          

          .........
          .........
          .........

                      QTableWidgetItem * Display_item_513_0 = new QTableWidgetItem("0");
              QTableWidgetItem * Display_item_513_1 = new QTableWidgetItem("1");
              QTableWidgetItem * Display_item_513_2 = new QTableWidgetItem("2");
              QTableWidgetItem * Display_item_513_3 = new QTableWidgetItem("3");
              QTableWidgetItem * Display_item_513_4 = new QTableWidgetItem("4");
              QTableWidgetItem * Display_item_513_5 = new QTableWidgetItem("5");
              QTableWidgetItem * Display_item_513_6 = new QTableWidgetItem("6");
              QTableWidgetItem * Display_item_513_7 = new QTableWidgetItem("7");
              QTableWidgetItem * Display_item_513_8 = new QtableWidgetItem("8");
          
          
              ui->tableWidget->setGeometry(-2,40,804,15424);
              ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
              ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
          
              ui->tableWidget->setRowCount(514);
              ui->tableWidget->setColumnCount(9);
          
          
              ui->tableWidget->setColumnWidth(0,80);
              ui->tableWidget->setColumnWidth(1,80);
              ui->tableWidget->setColumnWidth(2,80);
              ui->tableWidget->setColumnWidth(3,80);
              ui->tableWidget->setColumnWidth(4,80);
              ui->tableWidget->setColumnWidth(5,80);
              ui->tableWidget->setColumnWidth(6,80);
              ui->tableWidget->setColumnWidth(7,80);
              ui->tableWidget->setColumnWidth(8,80);
          
          
          
              QStringList horz_header;
              horz_header.clear();
              horz_header.append(“T1”);
              horz_header.append(“T2”);
              horz_header.append(“T3”);
              horz_header.append(“T4”);
              horz_header.append(“T5”);
              horz_header.append(“T6”);
              horz_header.append(“T7”);
              horz_header.append(“T8”);
              horz_header.append(“T9”);
              ui->tableWidget->setHorizontalHeaderLabels(horz_header);
          
              QStringList vert_header;
              vert_header.clear();
              vert_header.append("P1");
              vert_header.append("P2");
              vert_header.append("P3");
              vert_header.append("P4");
          
              ui->tableWidget->setVerticalHeaderLabels(vert_header);
              ui->tableWidget->horizontalHeader()->setVisible(true);
              ui->tableWidget->verticalHeader()->setVisible(true);
              ui->tableWidget-setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
              ui->tableWidget->setAutoScroll(false);
          
          
              ui->tableWidget->setItem(0,0,Display_item_0_0);
              ui->tableWidget->setItem(0,1,Display_item_0_1);
              ui->tableWidget->setItem(0,2,Display_item_0_2);
              ui->tableWidget->setItem(0,3,Display_item_0_3);
              ui->tableWidget->setItem(0,4,Display_item_0_4);
              ui->tableWidget->setItem(0,5,Display_item_0_5);
              ui->tableWidget->setItem(0,6,Display_item_0_6);
              ui->tableWidget->setItem(0,7,Display_item_0_7);
              ui->tableWidget->setItem(0,8,Display_item_0_8);
              ui->tableWidget->setItem(1,0,Display_item_1_0);
              ui->tableWidget->setItem(1,1,Display_item_1_1);
              ui->tableWidget->setItem(1,2,Display_item_1_2);
              ui->tableWidget->setItem(1,3,Display_item_1_3);
              ui->tableWidget->setItem(1,4,Display_item_1_4);
              ui->tableWidget->setItem(1,5,Display_item_1_5);
              ui->tableWidget->setItem(1,6,Display_item_1_6);
              ui->tableWidget->setItem(1,7,Display_item_1_7);
              ui->tableWidget->setItem(1,8,Display_item_1_8);
          

          .........
          .........
          ..........

          ui->tableWidget->setItem(513,0,FDP_Display_item_513_0);
          ui->tableWidget->setItem(513,1,FDP_Display_item_513_1);
          ui->tableWidget->setItem(513,2,FDP_Display_item_513_2);
          ui->tableWidget->setItem(513,3,FDP_Display_item_513_3);
          ui->tableWidget->setItem(513,4,FDP_Display_item_513_4);
          ui->tableWidget->setItem(513,5,FDP_Display_item_513_5);
          ui->tableWidget->setItem(513,6,FDP_Display_item_513_6);
          ui->tableWidget->setItem(513,7,FDP_Display_item_513_7);
          ui->tableWidget->setItem(513,8,FDP_Display_item_513_8);

          ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);
          ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
          ui->tableWidget->setShowGrid(true);
          ui->tableWidget->horizontalHeader()->setSectionsMovable(true);
          ui->tableWidget->horizontalHeader()->setSectionsClickable(true);
          ui->tableWidget->horizontalHeader()->etSectionResizeMode(QHeaderView::Fixed);

          }

          Key_Up_Routine {

          int scroll;

          qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
          scroll = ui->tableWidget->verticalScrollBar()->value();
          if(scroll >= 10) {
              ui->tableWidget->verticalScrollBar()->setValue((scroll - 10));
          }
          qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());
          

          }

          Key_Down_Routine {
          int scroll;

          qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
          

          scroll = ui->tableWidget->verticalScrollBar()->value();
          ui->tableWidget->verticalScrollBar()->setValue((scroll + 10));
          qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());

          }

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on 21 Nov 2019, 05:20 last edited by
          #7

          @Sajeevan-K said in Vertical ScrollBar of QTableWidget not moving as expected:

          QTableWidgetItem * Display_item_0_0 = new QTableWidgetItem("0");
          QTableWidgetItem * Display_item_0_1 = new QTableWidgetItem("1");
          QTableWidgetItem * Display_item_0_2 = new QTableWidgetItem("2");
          QTableWidgetItem * Display_item_0_3 = new QTableWidgetItem("3");
          QTableWidgetItem * Display_item_0_4 = new QTableWidgetItem("4");
          QTableWidgetItem * Display_item_0_5 = new QTableWidgetItem("5");
          QTableWidgetItem * Display_item_0_6 = new QTableWidgetItem("6");
          QTableWidgetItem * Display_item_0_7 = new QTableWidgetItem("7");
          QTableWidgetItem * Display_item_0_8 = new QTableWidgetItem("8");
          QTableWidgetItem * Display_item_1_0 = new QTableWidgetItem("0");
          QTableWidgetItem * Display_item_1_1 = new QTableWidgetItem("1");
          QTableWidgetItem * Display_item_1_2 = new QTableWidgetItem("2");
          QTableWidgetItem * Display_item_1_3 = new QTableWidgetItem("3");
          QTableWidgetItem * Display_item_1_4 = new QTableWidgetItem("4");
          QTableWidgetItem * Display_item_1_5 = new QTableWidgetItem("5");
          QTableWidgetItem * Display_item_1_6 = new QTableWidgetItem("6");
          QTableWidgetItem * Display_item_1_7 = new QTableWidgetItem("7");
          QTableWidgetItem * Display_item_1_8 = new QtableWidgetItem("8");

          Why don't you use loops?

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

          1 Reply Last reply
          1
          • S Offline
            S Offline
            Sajeevan K
            wrote on 22 Nov 2019, 04:43 last edited by
            #8

            Hi jsulm,

            I tried using loop for this. But my knowledge in qt is limited.
            I don't know how to make the names like Display_item_0_0 in a loop.
            If it is a string it is easy. I think something like unstring operation is required for this.

            The code I sent, does not contain all the declarations of Display items and assigning it to QTableWidget. Otherwise it contains all the things that I am testing.

            Today by evening, I will make a Table with just 25 rows and see the result.
            Thank You for supporting.

            jsulmJ VRoninV 2 Replies Last reply 22 Nov 2019, 05:19
            0
            • S Sajeevan K
              22 Nov 2019, 04:43

              Hi jsulm,

              I tried using loop for this. But my knowledge in qt is limited.
              I don't know how to make the names like Display_item_0_0 in a loop.
              If it is a string it is easy. I think something like unstring operation is required for this.

              The code I sent, does not contain all the declarations of Display items and assigning it to QTableWidget. Otherwise it contains all the things that I am testing.

              Today by evening, I will make a Table with just 25 rows and see the result.
              Thank You for supporting.

              jsulmJ Offline
              jsulmJ Offline
              jsulm
              Lifetime Qt Champion
              wrote on 22 Nov 2019, 05:19 last edited by
              #9

              @Sajeevan-K said in Vertical ScrollBar of QTableWidget not moving as expected:

              I don't know how to make the names like Display_item_0_0 in a loop

              Do you really need names for all of them? What do you do with all these names later?

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

              1 Reply Last reply
              2
              • S Sajeevan K
                22 Nov 2019, 04:43

                Hi jsulm,

                I tried using loop for this. But my knowledge in qt is limited.
                I don't know how to make the names like Display_item_0_0 in a loop.
                If it is a string it is easy. I think something like unstring operation is required for this.

                The code I sent, does not contain all the declarations of Display items and assigning it to QTableWidget. Otherwise it contains all the things that I am testing.

                Today by evening, I will make a Table with just 25 rows and see the result.
                Thank You for supporting.

                VRoninV Offline
                VRoninV Offline
                VRonin
                wrote on 22 Nov 2019, 09:42 last edited by
                #10

                @Sajeevan-K said in Vertical ScrollBar of QTableWidget not moving as expected:

                I don't know how to make the names like Display_item_0_0 in a loop.

                http://www.cplusplus.com/doc/tutorial/arrays/

                "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                ~Napoleon Bonaparte

                On a crusade to banish setIndexWidget() from the holy land of Qt

                1 Reply Last reply
                2
                • S Offline
                  S Offline
                  Sajeevan K
                  wrote on 22 Nov 2019, 14:50 last edited by
                  #11

                  Hi jsulm,

                  Thank You. I got Your point.

                  And the code is rewritten as shown below:

                  But the result is same. Still the maximum is 2 only.

                  form_Table {

                      ui->tableWidget->setGeometry(-2,40,804,15424);
                      ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
                      ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
                  
                      ui->tableWidget->setRowCount(514);
                      ui->tableWidget->setColumnCount(9);
                  
                  
                      ui->tableWidget->setColumnWidth(0,80);
                      ui->tableWidget->setColumnWidth(1,80);
                      ui->tableWidget->setColumnWidth(2,80);
                      ui->tableWidget->setColumnWidth(3,80);
                      ui->tableWidget->setColumnWidth(4,80);
                      ui->tableWidget->setColumnWidth(5,80);
                      ui->tableWidget->setColumnWidth(6,80);
                      ui->tableWidget->setColumnWidth(7,80);
                      ui->tableWidget->setColumnWidth(8,80);
                  
                  
                  
                      QStringList horz_header;
                      horz_header.clear();
                      horz_header.append(“T1”);
                      horz_header.append(“T2”);
                      horz_header.append(“T3”);
                      horz_header.append(“T4”);
                      horz_header.append(“T5”);
                      horz_header.append(“T6”);
                      horz_header.append(“T7”);
                      horz_header.append(“T8”);
                      horz_header.append(“T9”);
                      ui->tableWidget->setHorizontalHeaderLabels(horz_header);
                  
                      QStringList vert_header;
                      vert_header.clear();
                      vert_header.append("P1");
                      vert_header.append("P2");
                      vert_header.append("P3");
                      vert_header.append("P4");
                  
                      ui->tableWidget->setVerticalHeaderLabels(vert_header);
                      ui->tableWidget->horizontalHeader()->setVisible(true);
                      ui->tableWidget->verticalHeader()->setVisible(true);
                      ui->tableWidget-setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
                      ui->tableWidget->setAutoScroll(false);
                  

                  QStringList str_list;
                  str_list.clear();
                  str_list.append("0");
                  str_list.append("1");
                  str_list.append("2");
                  str_list.append("3");
                  str_list.append("4");
                  str_list.append("5");
                  str_list.append("6");
                  str_list.append("7");
                  str_list.append("8");
                  int row, column;
                  for (row = 0; row < 514; row++) {
                  for (column = 0; column < 9; column++) {
                  QTableWidgetItem * Display_item = new QTableWidgetItem(str_list.at(column));
                  ui->tableWidget_FDP->setItem(row,column, Display_item );
                  }
                  }

                  ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);
                  ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
                  ui->tableWidget->setShowGrid(true);
                  ui->tableWidget->horizontalHeader()->setSectionsMovable(true);
                  ui->tableWidget->horizontalHeader()->setSectionsClickable(true);
                  ui->tableWidget->horizontalHeader()->etSectionResizeMode(QHeaderView::Fixed);

                  }

                  Key_Up_Routine {

                  int scroll;

                  qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                  scroll = ui->tableWidget->verticalScrollBar()->value();
                  if(scroll >= 10) {
                      ui->tableWidget->verticalScrollBar()->setValue((scroll - 10));
                  }
                  qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());
                  

                  }

                  Key_Down_Routine {
                  int scroll;

                  qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                  

                  scroll = ui->tableWidget->verticalScrollBar()->value();
                  ui->tableWidget->verticalScrollBar()->setValue((scroll + 10));
                  qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());

                  }

                  jsulmJ 1 Reply Last reply 25 Nov 2019, 05:32
                  0
                  • S Sajeevan K
                    22 Nov 2019, 14:50

                    Hi jsulm,

                    Thank You. I got Your point.

                    And the code is rewritten as shown below:

                    But the result is same. Still the maximum is 2 only.

                    form_Table {

                        ui->tableWidget->setGeometry(-2,40,804,15424);
                        ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
                        ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
                    
                        ui->tableWidget->setRowCount(514);
                        ui->tableWidget->setColumnCount(9);
                    
                    
                        ui->tableWidget->setColumnWidth(0,80);
                        ui->tableWidget->setColumnWidth(1,80);
                        ui->tableWidget->setColumnWidth(2,80);
                        ui->tableWidget->setColumnWidth(3,80);
                        ui->tableWidget->setColumnWidth(4,80);
                        ui->tableWidget->setColumnWidth(5,80);
                        ui->tableWidget->setColumnWidth(6,80);
                        ui->tableWidget->setColumnWidth(7,80);
                        ui->tableWidget->setColumnWidth(8,80);
                    
                    
                    
                        QStringList horz_header;
                        horz_header.clear();
                        horz_header.append(“T1”);
                        horz_header.append(“T2”);
                        horz_header.append(“T3”);
                        horz_header.append(“T4”);
                        horz_header.append(“T5”);
                        horz_header.append(“T6”);
                        horz_header.append(“T7”);
                        horz_header.append(“T8”);
                        horz_header.append(“T9”);
                        ui->tableWidget->setHorizontalHeaderLabels(horz_header);
                    
                        QStringList vert_header;
                        vert_header.clear();
                        vert_header.append("P1");
                        vert_header.append("P2");
                        vert_header.append("P3");
                        vert_header.append("P4");
                    
                        ui->tableWidget->setVerticalHeaderLabels(vert_header);
                        ui->tableWidget->horizontalHeader()->setVisible(true);
                        ui->tableWidget->verticalHeader()->setVisible(true);
                        ui->tableWidget-setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
                        ui->tableWidget->setAutoScroll(false);
                    

                    QStringList str_list;
                    str_list.clear();
                    str_list.append("0");
                    str_list.append("1");
                    str_list.append("2");
                    str_list.append("3");
                    str_list.append("4");
                    str_list.append("5");
                    str_list.append("6");
                    str_list.append("7");
                    str_list.append("8");
                    int row, column;
                    for (row = 0; row < 514; row++) {
                    for (column = 0; column < 9; column++) {
                    QTableWidgetItem * Display_item = new QTableWidgetItem(str_list.at(column));
                    ui->tableWidget_FDP->setItem(row,column, Display_item );
                    }
                    }

                    ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);
                    ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
                    ui->tableWidget->setShowGrid(true);
                    ui->tableWidget->horizontalHeader()->setSectionsMovable(true);
                    ui->tableWidget->horizontalHeader()->setSectionsClickable(true);
                    ui->tableWidget->horizontalHeader()->etSectionResizeMode(QHeaderView::Fixed);

                    }

                    Key_Up_Routine {

                    int scroll;

                    qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                    scroll = ui->tableWidget->verticalScrollBar()->value();
                    if(scroll >= 10) {
                        ui->tableWidget->verticalScrollBar()->setValue((scroll - 10));
                    }
                    qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());
                    

                    }

                    Key_Down_Routine {
                    int scroll;

                    qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                    

                    scroll = ui->tableWidget->verticalScrollBar()->value();
                    ui->tableWidget->verticalScrollBar()->setValue((scroll + 10));
                    qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());

                    }

                    jsulmJ Offline
                    jsulmJ Offline
                    jsulm
                    Lifetime Qt Champion
                    wrote on 25 Nov 2019, 05:32 last edited by
                    #12

                    @Sajeevan-K You still can simplify your code with loops :-)

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

                    1 Reply Last reply
                    1
                    • S Offline
                      S Offline
                      Sajeevan K
                      wrote on 25 Nov 2019, 14:50 last edited by
                      #13

                      Hi jsulm,

                      Thank You for Your suggestions. Today I am busy with my work. Tomorrow I will test it and give a feedback.

                      1 Reply Last reply
                      0
                      • S Offline
                        S Offline
                        Sajeevan K
                        wrote on 29 Nov 2019, 13:45 last edited by
                        #14

                        Hi jsulm,

                        Sorry for the delay. I have been busy with a customer inspection.

                        As per Your suggestion, I reduced it further as shown below.

                        Now the maximum() is reduced to 1.

                        form_Table {

                        int row, column;

                            ui->tableWidget->setGeometry(-2,40,804,15424);
                        
                            ui->tableWidget->horizontalHeader()->setDefaultSectionSize(80);
                        
                            ui->tableWidget->verticalHeader()->setDefaultSectionSize(30);
                        
                            ui->label_FDP_Display->setGeometry(-2,0,804,40);
                        
                        
                            ui->tableWidget->setRowCount(514);
                        
                            ui->tableWidget->setColumnCount(9);
                            for (column = 0; column < 9; column++) {
                                ui->tableWidget->setColumnWidth(column,80);
                            }
                        

                        QStringList horz_header;
                        horz_header.clear();

                            QString hh_str;
                            for (column = 0; column < 9; column++) {
                                hh_str.clear();
                                hh_str.append("T");
                                hh_str.append(QString::number(column));
                                horz_header.append(hh_str);
                            }
                        

                        ui->tableWidget->setHorizontalHeaderLabels(horz_header);

                        QStringList vert_header;
                            vert_header.clear();
                        
                            QString vh_str;
                            for (row = 0; row < 514; row++) {
                                vh_str.clear();
                                vh_str.append("P");
                                vh_str.append(QString::number(row));
                                vert_header.append(vh_str);
                            }
                        

                        ui->tableWidget->setVerticalHeaderLabels(vert_header);

                        ui->tableWidget->horizontalHeader()->setVisible(true);
                        ui->tableWidget->verticalHeader()->setVisible(true);
                        ui->tableWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
                        ui->tableWidget->setAutoScroll(false);

                            QString item_str;
                            for (row = 0; row < 514; row++) {
                                for (column = 0; column < 9; column++) {
                                    item_str.clear();
                                    item_str.append(QString::number(row));
                                    item_str.append(",");
                                    item_str.append(QString::number(column));
                                    QTableWidgetItem * FDP_Display_item = new QTableWidgetItem(item_str);
                                    ui->tableWidget->setItem(row,column, FDP_Display_item );
                                }
                            }
                        

                        ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);

                            ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
                        

                        ui->tableWidget->setShowGrid(true);
                        ui->tableWidget->horizontalHeader()->setSectionsMovable(true);
                        ui->tableWidget->horizontalHeader()->setSectionsClickable(true);
                        ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);

                        }

                        Key_Up_Routine {

                        int scroll;

                        qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                        scroll = ui->tableWidget->verticalScrollBar()->value();
                        if(scroll >= 10) {
                            ui->tableWidget->verticalScrollBar()->setValue((scroll - 10));
                        }
                        qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());
                        

                        }

                        Key_Down_Routine {
                        int scroll;

                        qDebug("current value = %d ", ui->tableWidget->verticalScrollBar()->value());
                        

                        scroll = ui->tableWidget->verticalScrollBar()->value();
                        ui->tableWidget->verticalScrollBar()->setValue((scroll + 10));
                        qDebug("new value = %d ", ui->tableWidget->verticalScrollBar()->value());

                        }

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          Sajeevan K
                          wrote on 19 Dec 2019, 08:51 last edited by
                          #15

                          Hi jsulm,

                          I could finally solve the issue. The problem was in the line

                          ui->tableWidget->setGeometry(-2,40,804,15424);

                          Generally for ui->tableWidget->setGeometry(x,y,width,hight),

                          hight should be equal to number of rows in one page * default vertical section size.

                          Thank You for the hints SGaist, jsulm

                          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