Russian Qt Forum
Март 28, 2024, 22:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Курсор мыши в QGraphicsView  (Прочитано 4716 раз)
Dunkan
Новичок

Offline Offline

Сообщений: 5


Просмотр профиля
« : Май 25, 2018, 09:54 »

Добрый день!
Столкнулся с проблемой в QGraphicsView, при помещении на QGraphicsScene прокси виджета QGraphicsProxyWidget, в котором находится QTableWidget, не всегда верно отображается курсор мыши ресайзе колонок или строк
Вот небольшой тестовый пример.

Код:
#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QGraphicsScene>
#include <QGraphicsProxyWidget>
#include <QGraphicsView>
#include <QTableWidget>

MainWindow::MainWindow( QWidget *parent ) :
    QMainWindow( parent ),
    ui( new Ui::MainWindow )
{
    ui->setupUi( this );

    QGraphicsView *view = new QGraphicsView ;
    QGraphicsScene *scene = new QGraphicsScene ;
    scene->setSceneRect( 0, 0, 1000, 1000 );
    QGraphicsProxyWidget *item = new QGraphicsProxyWidget ;
    QTableWidget *table = new QTableWidget ;
    table->setRowCount( 10 );
    table->setColumnCount( 5 );
    table->setHorizontalHeaderLabels( QStringList() << "1" << "2" << "3" << "4" << "5" );
    table->setGeometry( 0, 0, 640, 480 );
    item->setWidget( table );
    scene->addItem( item );
    scene->setFocusItem( item );
    view->setScene( scene );
    setCentralWidget( view );
}

MainWindow::~MainWindow()
{
    delete ui;
}


Код:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H


Подозреваю что дело в событиях наведения мыши, возможно кто-нибудь решал подобную проблему
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3257


Просмотр профиля
« Ответ #1 : Май 25, 2018, 16:12 »

По возможности, лучше не использовать прокси-виджет, он глючный.
Лучше скопипастить реализацию виджета к себе и отнаследовать его от QGraphicsWidget
Записан
Dunkan
Новичок

Offline Offline

Сообщений: 5


Просмотр профиля
« Ответ #2 : Май 28, 2018, 07:17 »

По возможности, лучше не использовать прокси-виджет, он глючный.
Лучше скопипастить реализацию виджета к себе и отнаследовать его от QGraphicsWidget

Согласен, глючная штука. Думаю вы правы, вариант не очень красивый, но возможно единственный, благодарю  Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.043 секунд. Запросов: 22.