Qt connection QTableWidget and QGLWidget

Qt connection QTableWidget and QGLWidget

本文关键字:QGLWidget and QTableWidget connection Qt      更新时间:2023-10-16

我是Qt的新手,我在一个任务中堆叠。我创建了一个QGLWidget,并尝试用一个QTablewidget连接它。我想从QTableWidget中获取一个变量,我想使用它来绘制QGLWidget。问题是有两个类,一个用于QGLWidget,另一个用于ui(包括QTableWidget的QDialog),我不知道如何从QTableWidget。我可以使用信号和插槽吗?或者我可以从QGLWidget访问ui,我该怎么做?如果有任何想法,我将不胜感激。

您可以在没有信号和插槽的情况下完成此操作。使用setter,您可以设置不同类型的变量,并在GLWidget:中使用

#ifndef GLWIDGET_H
#define GLWIDGET_H
#include <QGLWidget>
#include <QDebug>
class GLWidget : public QGLWidget
{
    Q_OBJECT
public:
    explicit GLWidget(QWidget *parent = 0);
    void setValue(int i);
signals:
public slots:
private:
    int member;
};
#endif // GLWIDGET_H

Cpp:

#include "glwidget.h"
GLWidget::GLWidget(QWidget *parent) :
    QGLWidget
    (parent)
{
}
void GLWidget::setValue(int i)
{
    member = i;
    qDebug() << i;
}

用法:

void MainWindow::on_tableWidget_clicked(const QModelIndex &index)
{
    GLWidget *wgt = new GLWidget;
    wgt->setValue(index.data().toInt());
    wgt->show();
}