Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Portuguese
  4. SetClickable - Erro a reproduzir exemplo [RESOLVIDO]
Forum Updated to NodeBB v4.3 + New Features

SetClickable - Erro a reproduzir exemplo [RESOLVIDO]

Scheduled Pinned Locked Moved Portuguese
5 Posts 2 Posters 2.0k 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.
  • L Offline
    L Offline
    lima_will
    wrote on last edited by
    #1

    Pessoal,
    Estou tentando reproduzir este exemplo:

    http://www.codeprogress.com/cpp/libraries/qt/showQtExample.php?index=140&key=QTableWidgetDetectHeaderClick

    Só que sempre retorno este erro:

    @/home/will/Qt - Projetos/Telas/Variaveis.h:15: error: 'setClickable' was not declared in this scope@

    Atualmente o código está assim:

    @#ifndef VARIAVEIS_H
    #define VARIAVEIS_H

    #include <QMessageBox>
    #include <QHeaderView>
    #include <iostream>
    #include <QtGui>

    class myHeaderView : public QHeaderView
    {
    Q_OBJECT
    public:
    myHeaderView():QHeaderView(Qt::Horizontal)
    {
    setClickable(true);
    connect(this,SIGNAL(sectionClicked(int)),this,SLOT(sectionClicked(int)));
    }
    ~myHeaderView(){}

    public slots:
    void sectionClicked(int index)
    {
    QMessageBox::about(this,"Hi! Header Click Detected!","Index:"+QString::number(index));
    }

    };

    #endif // VARIAVEIS_H@

    1 Reply Last reply
    0
    • T Offline
      T Offline
      TioRoy
      wrote on last edited by
      #2

      A versão do código era para o Qt 4.7.4.

      Se estiver compilando com o Qt 5, troque a chamada do setClickable para setSectionsClickable (http://qt-project.org/doc/qt-5.0/qtwidgets/qheaderview-compat.html#setClickable). Deve resolver.

      1 Reply Last reply
      0
      • L Offline
        L Offline
        lima_will
        wrote on last edited by
        #3

        TioRoy,

        Sabia que era uma versão mais antiga do Qt, dureza que o comando que você passou está sendo reconhecido pelo Qt, mas não está funcionando mesmo clicando na linha da tabela não está mostrando o MensagemBox.

        Alguma sugestão de como fazer isso funcionar no Qt 5.1?
        E obrigado pela ajuda!

        1 Reply Last reply
        0
        • L Offline
          L Offline
          lima_will
          wrote on last edited by
          #4

          TioRoy,

          Consegui cara depois de fuçar em uns foruns gringos achei como pegar o id da linha como queria, mas gostaria sem abuçar de você como fazer esse exemplo funcionar no Qt5.

          Usei o seguinte código para pegar o id:

          @QItemSelectionModel* selectionModel = ui->tableWidget->selectionModel();

          QModelIndexList selected = selectionModel->selectedRows();

          for(int i= 0; i< selected.count();i++)
          {
          QModelIndex index = selected.at(i);
          qDebug() << index.row();

          }@

          1 Reply Last reply
          0
          • T Offline
            T Offline
            TioRoy
            wrote on last edited by
            #5

            Você já tentou usar o método "visualRow":http://qt-project.org/doc/qt-5.0/qtwidgets/qtablewidget.html#visualRow?

            @
            public slots:
            void sectionClicked(int index)
            {
            QMessageBox::about(this,"Hi! Header Click Detected!","Index:"+QString::number(ui->tableWidget-visualRow(index)));
            }

            @

            O sectionClicked vai disparar se foi clicado no QHeaderView (coluna ou linha).

            O código que você postou é legal para você saber as linhas que estão selecionadas (selectedRows).

            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