我是Qt的新手,我在一项任务中积累了经验。我创建了一个QGLWidget,并尝试将其与QTablewidget连接。为了在QGLWidget中绘图,我想从QTableWidget中获取一个变量。我可以使用signal和slot吗,或者我可以从QGLWidget访问ui,我该怎么做?如果您有任何想法,我将不胜感激。
发布于 2014-11-08 19:55:01
你可以在没有信号和插槽的情况下做到这一点。使用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_HCpp:
#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();
}https://stackoverflow.com/questions/26816600
复制相似问题