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. QTableView show better seleced/focused Row
Forum Updated to NodeBB v4.3 + New Features

QTableView show better seleced/focused Row

Scheduled Pinned Locked Moved Unsolved General and Desktop
2 Posts 2 Posters 533 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.
  • Andy314A Offline
    Andy314A Offline
    Andy314
    wrote on last edited by
    #1

    I have a QTableView and I must enable SingleSelection (Cell) for editing. So only the current cell gets a special background for selection.
    In this case I cannot really good see what row is/was selected, especial when I leave the tableview or I have a simple ActionButton delegate in a column.

    Is it possible to get a selection coloring like MS-Office/Access-Tables:

    The whole row gets a special background and the current selected cell an other background

    raven-worxR 1 Reply Last reply
    0
    • Andy314A Andy314

      I have a QTableView and I must enable SingleSelection (Cell) for editing. So only the current cell gets a special background for selection.
      In this case I cannot really good see what row is/was selected, especial when I leave the tableview or I have a simple ActionButton delegate in a column.

      Is it possible to get a selection coloring like MS-Office/Access-Tables:

      The whole row gets a special background and the current selected cell an other background

      raven-worxR Offline
      raven-worxR Offline
      raven-worx
      Moderators
      wrote on last edited by
      #2

      @Andy314

      1. sublcass QStyledItemDelegate
      2. reimplement it's initStyleOption() method
      3. call the base class implementation first
      4. check the options state for selection and focus
      void MyItemDelegate::initStyleOption(QStyleOptionViewItem *option, const QModelIndex &index) const
      {
          QStyledItemDelegate::initStyleOption(option, index);
      
          if( option->state & QStyle::State_Selected )
               option->backgroundBrush = QBrush( Qt::red );
      
          if( option->state & QStyle::State_HasFocus )
               option->backgroundBrush = QBrush( Qt::yellow );
      }
      

      --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
      If you have a question please use the forum so others can benefit from the solution in the future

      1 Reply Last reply
      1

      • Login

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